Methods defined in widgets are available in URL instances

This is the problem that methods defined through a widget definition were not accessible from Shoes::URLs (see #890)

* Shoes::App handles method definitions and subscribers
* fixes #890

Should be good to go, would like a code review, though. :-)
If we add another class to `METHOD_SUBSCRIBER`, we won't be running the tests on them unless someone remembers to update this. Is it too self-referential for this to use `[Shoes::App] + METHOD_SUBSCRIBERS` as the basis for the `each`?