AssistedInject Deluxe.

This introduces a new static utility class, Factories, that can be used to build factories. It behaves very similarly to FactoryProvider, with a few minor differences: 
 - matching is by @Assisted("name") rather than position
 - AOP is supported
 - factory params can be injected anywhere - as parameters, Providers, method arguments, indirect dependencies, etc. 
 - cglib is used internally instead of Proxy. This allows the factory to be injected directly

git-svn-id: d779f126-a31b-0410-b53b-1d3aecad763e
5 files changed