Add Added the routable class which Route/RouteGroup will extend
Edit moved all base components from Route to Routable
Edit removed base components from Route, Made sure to override and return true for ShouldRemove
Edit Extend RouteGroup from Routable so we have access to url/middleware
Edit Added functions which allow the adding of groups in the way discussed. E.g with a constant interface/context