Making controllers invokable

Big improvement to router/controller/filter separation of concerns.