Support strings as endpoints
Add tests
Add more tests
Refactor transport
Merge branch 'master' into client
Merge branch 'master' into client