Websockets manager improvements

This is a much-improved implementation of the websockets.Manager that can reliably stream ledgers starting from any point. You can see it used from the ledgermon tool.

I'm looking for a code review before I merge. I've tried to make a decent API that conforms to Go norms. My references have been:
* [Principles of designing Go APIs with channels](https://inconshreveable.com/07-08-2014/principles-of-designing-go-apis-with-channels/)
* The [net/rpc Client](http://golang.org/src/pkg/net/rpc/client.go) package from the standard library