added ability to teardown tcp connection pool and reconenct

Ignore-this: f720ea3cac450d1f8b01effecea0c769

This is to support the case where you loose your internet connection and run out of outgoing connections in the pool for connecting to a greeter

darcs-hash:20131102135913-c21fe-999f0e560e0cbf8a1d6f2bcd7c9cb593225e4a90
didn't catch'em all

Ignore-this: d5a33f33545c4972f126c8934e4c6dc9

darcs-hash:20131102140125-c21fe-29b8a06259d93625ef917e850d89bc4e053575dd
updated userservice to manage a new state called CONNECTING

Ignore-this: ba4f91655be741b3f92da62ae5eaa65e

Now that we try to reconnect to disconnected users we the logic for connecting changed slightly. There is now a new state called connecting and a user is connected once a valid ping comes in after DH session is established. This means a user is onlyu connected once an agreed upon DH shared secret is agreed upon.

The the downside is that there is now a delay between OFFLINE and CONNECTED state.

darcs-hash:20131102140145-c21fe-f521ceb8426c7f62fc9518795b7fe41aa4fa6c51
reduced connection delay

Ignore-this: dc47fb1476a996aeb9e8332c6a62609a

ping is now sent immediately after DH session is created.
This reduces delay between connecting and connected states.

darcs-hash:20131103231148-c21fe-354ff4311d42848f7094fe6477babdf18fd61199
reduced threshold for disconnect

Ignore-this: f133cc43aea12175fbc75f2cc5789bb4

Now that we have reconnect I reduced the threshold for not recieving
a ping for a connection to roughly 9 seconds instead of 30ish.

darcs-hash:20131103231250-c21fe-e67958fcb0f5e8cbc361e81ff7a2df5f3c143bec
updated INSTALL file

Ignore-this: 5f39e7f4ee5fa62c1f1439d2c7071965

The install was out of date referencing and old way of connecting contacts.

darcs-hash:20131104040919-c21fe-7db0e4efa2f1ccc9dbbe64a1fe95cb445713c070
Merge branch 'master' into moc_parse