Move listener ref weakening to Connection

I actually mainly use connectNotify, so the merged request from yesterday doesn't actually let me kick the tires. I was planning on adding the rest of the *Weak methods if the general idea was workable. I did say it was incomplete in the request :stuck_out_tongue_winking_eye:.

In any case, this is probably a better implementation. It adds a single `holdWeakly` method to Connection and doesn't clutter up all of the Reactor subclasses with *Weak methods.