Added example. Cleaned up constructor, added key set, get, and validation. Invalid key check works