Cache loaded configs

It is crucial for the loaded configuration files to be persistent so that builder plugins can safely do their `addFile` and `removeFile` calls.

As it is currently, these only affect the one build step where the plugin is called, causing issues with aliasing as reported in anthonyshort/component-coffee#3

There was already a TODO for caching the loaded component manifests, and so this not only makes plugins work better, but should also improve performance.