Fixed up memory leak issues (as reported by valgrind) in/EventLoop 's
usage of libevent
Changed EventLoop to use a single map structure for both timers and
sockets, along with a single callback interface (timers are wrapped
with lambdas to ignore the fd arg).

Changed Connection back to using callLater() instead of the 1ms
EventLoop timer.