Split out Connection transition handlers to fix Channel reconnection

Fix for #5.

I'm not sure what you had planned for the pending Channel tests in ValidConnectionSpec so I just added a new one.