fixed more tcp connection issues

Ignore-this: 8ae7c0aa64888ae2de087fe04bb1c409

Fixed two bugs. one where adding a greeter first time fails.
two, where close function may try to close socket that already got destroyed

darcs-hash:20131114041538-c21fe-e38a54f45ad681cc7ce2c4f1555731e7f7761a2a
cleaned up firegreet a little by creating a function to update addresses

Ignore-this: f43c9d61882232a3c5783b780c8d378f

darcs-hash:20131114051059-c21fe-444f9f3a039512d19f2dbf368e892bcf9800ebb5
cleaned up user service

Ignore-this: 3085de307857c6ed378a8ca3110d820a

also sped up connecting...

darcs-hash:20131114051135-c21fe-07eb79a522b295d2143052da1f21d16797735e75
woopsie, now i remember why i had that

Ignore-this: 276fb49afbe939993dcc8fcac6b62f1c

fixed socket close crash.

darcs-hash:20131114051817-c21fe-cedf7875268e3af42fd804f51e393e8a234c5896
network optimizations

Ignore-this: bcec7f1b20240a14a7212719a22932ba

1. added thread just for tcp connections and sending messages so that udp does not block
2. timing changes to ping
3. caching values in dh_secret

darcs-hash:20131115060013-c21fe-ee0c06b4c665868c18df0ec62cd7468310549c23
Merge branch 'master' into moc_parse