Allow access to the underlying stream

The use case here is to allow methods like `set_read_timeout` to be
called.
Bump to 0.1.0
Sync is now part of the standard library
Merge pull request #105 from andor44/master

Sync is now part of the standard library
Bump to 0.1.1
Hasher: static contract checking, context reuse

- Store EVP_MD_CTX in a separate struct.
- Add with_context() constructor that uses an existing context.
- Switch to EVP_Digest(Init|Final)_ex for efficient context reuse.
- Make update() borrow &mut self.
- Make finalize() consume self. Add finalize_reuse() that also returns the
context which can be passed to from_context() constructor for reuse.

These changes let the type system prevent illegal calls to update() and
finalize().
Merge pull request #99 from gkoz/context_reuse

Hasher: static contract checking, context reuse
New build system
New build system
Cert loading from PEM & restructuring 

- Added cert loading

- Extracted X509 tests

- Extracted `hash_str_to_vec` function into `utils.rs` as it is used 
  in a couple of tests now

- Fixed `hash_str_to_vec`, funny enough prev test with it was working 
  because I’ve made another mistake by providing VerifyNone instead of 
  VerifyPeer and those 2 mistakes compensated each other. Since
  `hash_str_to_vec` is private there was no errors on client code
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
Update to nightly
Fixed invalid rebase