Cleaning up some trailing whitespace
Changed Distribution._sign_string over to use rsa

rsa is a pure-python alternative to M2Crypto when it comes to cloudfront's usage in _sign_string
Unconditional 'else' was causing breakage

While writing unit tests to make sure _sign_string works in all possible cases
I discovered that my unconditional 'else' clause was making it so that
private_key_string would never be used. That has been addressed.
Removed overeager seek

The .seek(0) in Distribution._sign_string isn't necessary, any preparation of
the file object that needs to be done can be done outside of this bit of code
Merge branch 'seandst-develop' into develop

This replaces M2Crypto with rsa to sign urls
in CloudFront, fixes #1214.

* seandst-develop:
  Removed overeager seek
  Unconditional 'else' was causing breakage
  Changed Distribution._sign_string over to use rsa
  Cleaning up some trailing whitespace
Remove m2helpers module in contrib

There are other modules that can now validate HTTPS
connections, so this is no longer necessary.
Remove m2crypto as a dependency
Merge branch 'no-m2crypto' into develop

As mentioned in #1214, the old contrib code m2helpers
is no longer needed so it's being removed, and as a result
we longer depend on m2crypto.

* no-m2crypto:
  Remove m2crypto as a dependency
  Remove m2helpers module in contrib