Routes implements new Interface
added tests, settings property and RouteFactory