Adding support for route specific before/after filters

Previously before and after could only be functions.

Now they can be objects where every property is the name of a route with the corresponding callback attached. This allows for more granularity and prevents one from having to do route name checking inside the callback.