Since most of the api is promised, i was wondering why connect() function is not. It looks bad (example: https://gist.github.com/davibe/8986a865a96005fa2467)