Suggestions on good place to inject resource asset (css,js) handler functions

I am using a slightly modified version (allows filter by template/
layout) of Aaron Greenlee's Code
and debating the best place to put based on the following criteria

Pre-define a set of Assets for global usage (i.e. Default assets)
Allow filtering based on Layout/View prior to usage
Ease of Asset list maintenance (do not want to do global search/
replace of code)
Minimize configuration for a given layout.

So right now I tested the following successfully using the preHandler
function of the Event.Handler

var prc = Event.getCollection(private=true);

      // Adding multiple assets in a single call

Then on Layout.Login.cfm I include

    cssAssets = Event.getAssets(type='css',template="Layout.Login.cfm");
    cssLength = arrayLen(cssAssets);
    if (cssLength > 0)
      for(i=1; i <= cssLength; i++)
        writeOutput('<link href="#cssAssets[i]#" type="text/css"
rel="stylesheet" media="screen"/>');


So all works fine, but not really like having to define the Assets in
the event handler since quite possibly could have lots. Also thinking
that the code in the Layout.login.cfm page could be moved to a
variable and just be replaced on with a variable like

So my thinking is what if I move all this to a preRender in an
Interceptor. Is this silly, bad form, taxing when scaled, etc...