Adding support for ActivateAttribute via IControllerActivator

This mechanism replaces code in Inject that activated properties
by looking them up by names.

First draft as a POC. Tests will come in later iterations.
The issue with totally deleting the controller factory is that if you want to get controllers another way (say from DI) you need to replace the whole invoker. IMO activation should remain a detail of the default factory impl.

That said, anything using a `string name` in a public contract is just asking for another attribute-routing-fiasco