Replace Sender with Endpoint interface.

- Add Endpoint interface to be much more helpful and powerful.
- Add Helper to implement the busywork of the Endpoint interface.
- Add smart default implementations to Helper like looping/breaking
  message Privmsg/Notice implementations.
- Gut corehandler tests in favor of much less confusing tests.