Add support for using certificates in certificate store, update socket read logic and new names for settings

Now we uses the same (and new) read logic in SocketReader and
SocketInitiatorThread, which is rewritten to much better reflect the old
control flow. This also allow us to work around several bugs regarding
timouts and Network/SsslSteram in .net 2/3.5