Added support for SHA256 hashed passcodes

The hashedCode property can be used to signify that the passcode
property will either return or be set as an SHA256 hashed string. Also
included is the MIHashing class so an SHA256 hash string can easily be
generated using [MIHashing hashForString:].

The CommonCrypto framework is required in addition to QuartzCore.