Request drains & pausing

Closes #65. Closes #56.

This brings the TCP backend closer to HTTP, as well as implements backend pausing and request drains. 

Originally the events just passed trough since I also emit events when individual backends are drained, but I didn't go trough implementing that for multiple controllers, so yes, all this does so far is emit this single event.