Extends Hashes with the ability to look up by key or value instead of just key.
The benefit of this construct is mostly (and usually only) beneficial when there’s
a clear deliniation between the keys and values, such as with hashes with a common
key scheme and uniquely different string values. For example, a hash of states
(both geologic and status), etc.
It is not recommended to use this library with dynamically consumed data as
conflicts can occur and behavior is not guaranteed to work sanely or consistently
at that point (though it should still work).
Copyright 2008 Matt Todd, Highgroove Studios
Licensed under the MIT License.