Simplified connection cycle

Consolidated Idle and Lost states in single Disconnected state.
Added connection interface

- Added IConnection to allow introduction of alternative connection
routes (planning TCP).
- A little more connection simplification, removing use of
ConnectionState in the connection itself.