Start on a new `FunctionKey` to fill in the gap left by `TransformedKey`.
Handle missing values.
Implement `FunctionKey::test`.
Test the original key can be used instead.
Finish the renaming.
FunctionKeys can pull their names from the original key.
Split long lines into two.
A DefaultedKey delegates to the supplied key.
A DefaultedKey returns the default value if there is no other value.
Fix a warning.
DefaultedKey delegates its existence test.
Use `hasKey` in other tests.
DefaultedKey can be used for storage.
DefaultedKey delegates retrieval.
Nulls are bad.
Check for nulls in the Property class. It's not doing much else.
Allow using delegating keys when specifying a rekord's accepted keys.
Rephrase tests, and use the words "underlying key" consistently.
If a FunctionKey will return null, it should test as false.
The `Rekord::keys` method asks the key if its property is present.