Configurations.containsKey(...) should be abstract.

Concrete implementations like SecureConfigurations may alias xxx.$encrypted to xxx,
and they need to perform their own checks....
Implementation of equals(...) and hashCode().