Prototype CommonCrypto (OS X, iOS) support.

* Requires OS X 10.7+ or (presumably) iOS 6+
* Only supports AES 128/192/256 using ECB/CBC/OFB/CFB at this time
* No way to check if a binding is available on your platform except
  try/except on the import
Add hash support to the commoncrypto prototype backend.

Some refactoring of how it determines supported ciphers (incomplete)
add 3DES support, remove AES CTR
hmac support
add blowfish support
add aes ctr support to commoncrypto backend
add cast5 ecb support (commoncrypto)