Add: Tornado framework, dynamic entry points for clients

- [x] Switch to Tornado (py3 and asyncio friendly )
- [x] Handle adding web clients via registry
- [x] Extensions can extend API with custom methods
- [x] Write tests
- [x] Write documentation
- [x] Plain old HTTP request handler for RPC
- [x] Create simple plugin / cookiecutter example