Pull request for some new beanFactory performance suggestions

I have created a second pull request for some additional beanFactory
suggestions. Here is the URL and description from the request:

Here are two changes I would like to suggest for the bean factory.

In some of my models I have arguments to the init method which are not
marked for injection. However, the bean factory defaults to trying to
locate a model for each of them. (the arguments are there for when I
extend that component and need to pass along args to super.init)
Caching "models" (if you will) that the bean factory can't find
prevents it from looking over and over for a "model" that isn't there.
The other half of the change is simply caching the metaData for the
init method of a model for so constructor dependency doesn't have to
keep looking it back up.

In my specific test of creating a model over and over with init args
not for injection, I was able to measure a 23% improvement in
performance. Most of that was related to the locateModel() change.

Thanks!

~Brad