Update comments
Increase testability with loose coupling

 - Functions in shortcuts package is moved to
   an implementation of the new Shortcuts
   interface
 - Handler funcs are now methods of "Handler
   structs" where services are made available
   to the handler funcs as fields on the struct.
   The HandlerFuncs can be used as before thanks
   to method pointers.
 - server.go is now responsible for initializing
   services, filters and handlers with their
   required dependencies
 - TemplateRenderer implementations are now
   injected into clients instead of clients
   being tightly coupled to the 
   templating.RenderTemplate func.