Feature matrix & conditioned doc generation

- Ensures that library builds and passes all tests without any
  features and with `tlsv1_1`, `tlsv1_2` features enabled. Note, 
  that `sslv2` isn’t in test case because on modern linux (like 
  on Travis servers) `SSLv2_method` isn’t in `libssl.so` so it
  builds fine but fails on linking tests.

- For simplification it generates docs after every build, but 
  uploads them once - if it is `master` branch and not a pull
  request.
Merge pull request #62 from vhbit/feature-matrix

Feature matrix & conditioned doc generation
Better thread working

Works pretty stable for me, although I'm not sure it is 100% thread safe yet.

Changes mostly inspired by https://www.arangodb.org/2014/07/08/started-hate-openssl :

- Switched to newer CRYPTO_THREADID API for Unixes

- Clearing errors queue before every critical operation
Simplified SslStream.write, updated comments
Locking internal buffer from same thread access

If cloned stream was used in the same thread
WIP: erase later