Opaque keys

Sorry, I merged this to opaque-keys instead of master.