Proof of concept for searching keys using set functions

This should give us O(log n) searches instead of O(n)
Key lookup is now O(log n) instead of O(n)

This is thanks to storing the keys as a set