The KeychainItemWrapper original code from Apple, with ARC and NSDictionary support