Activator optimization: first stage - cache constructor and parameter routing info

First stage of our optimization is to create caching for constructors.
Rename to CreateFactory. I need to return the factory and the rank (apply exact length) here so I need to use the out param here.