Make Routable use __init_subclass__ instead of a metaclass to allow routes to be inherited
As reported in this StackOverflow question, there is a need for routes to be inheritable.
I've made Routable
use __init_subclass__
instead of a metaclass so that dir(cls)
can include methods inherited from a parent class.
Edited by Ben Hsing