fixed bug where connect() was calling completion handler twice. bug was in handshake when a node is stopped and receive_* get called with error::service_stopped. the code was incorrectly handling errors. fix is to correctly stop subsequent calls by setting the counter to the clearance_count.  this is now done through the new async_parallel mechanism (see last commit before this). async_parallel takes a callback and calls it exactly once on the condition it is either called N times or with an error.