Simplify lwt server

* simplify signatures with some aliases

* make Server.t abstract and expose constructor (`make`)

* Remove seemingly redundant `unit` arg in `conn_closed`

these are breaking changes but trivial imo.
I like this, but it breaks a lot of existing code.  Will do the upstream fixups before merging.