safe subdataWithRange function BTCDataRange(data, range) which returns zeroable instance
added support for clearing sensitive data in BTCKeychain
cleaner code