Adding an advanced router controller
Config no longer holds data in a flat array and instead uses a multidimensional one, in order to support returning fragments of the data structure. No longer trying to singleton Config, this should be adopted behaviour by extending some Singleton class.
Delegates now get a reference to the calling object first and afterwards distinct parameters for all arguments, instead of a single array. respondsToSelector now properly takes into account the access modifier of a method, when it previously would say that a private method would exist.
Improved the flow control logic a bit.