make getControllerName public so that getController is a pure function
add getter and setters to make it possible to make changes to the controller factory after creation
phpdoc
annotation handler phpdoc
stop using exception for flow control
add convenience method to produce router using default controller factory implementation