Began adding stop mechanism for endpoints.  Stopping means that an endpoint will not process any new events.
In certain circumstances, deadlock detection test could hang.  Fixed by making try commit not a daemon thread.
Added a test to ensure that stopping a single side works.
Stop now sends a message to partner to request partner to stop.
Added test cases for stop callbacks.
Both sides exchange messages to synchronize stop and ensure that no events end in partial phase of 2-phase commit.
Added dummy code on connection objects to ensure that can stop endpoints that are not actually connected to other endpoints.
Actually closing open socket.
Merge remote-tracking branch 'origin/master'