Implement custom TCP listener

* use TCP keep-alive to shut down connections where the peer has timed out and disconnected before the server could handle their request(s)
* use a buffered channel as a method of limiting the number of open TCP connections a server may have