Improved Router

* Groups are now handled through a `Group` class that provides type safe getters and setters.
* Added a new `Router::prg()` method that maps GET and POST routes.