Make record keys opaque
Define the record key type as a struct instead of a named array type, to allow the implementation to change and potentially allow caching of the hash.
Define the record key type as a struct instead of a named array type, to allow the implementation to change and potentially allow caching of the hash.