Improved  predictability of connection mechanism. Now throws exceptions when a connection cannot be made. General improvements to stability.
Put reading task onto the threadpool.