Change implementation of Key from using Dictionary<T> to custom class
Cleaned code of previous commit