added router, and REST adapter