api tests
support multiple clients, updated dependencies, add some documentation