Use TorSocket for hidden service self-test

This removes some redundant code and allows better handling of retries
and connectivity state for the hidden service self-test. The self-test
is also run again after connectivity changes to offline.

This should later be used to display some kind of error after a timeout
if the test does not succeed.
Fix spacing in ContactPreferences
Show a small prompt to the add contact dialog on first run
Remove old translation files
Open contact info for double-click on request contacts
Fix double click behavior in preferences contact list
Show a separator in conversation when the contact is offline

This gives a clearer indication of when messages stopped being
delivered to the contact and why.
Improve text visuals in MessageDelegate to closer match components
Show rejected contact requests in a separate category
Fix various compiler warnings
Remove left over pieces of unbuffered replies
Move most protocol constants into a header
Reposition chat windows when opened
Visual tweak to TorStateWidget
Display a connection status/animation over contact list when offline