GuardedDictionary implements the Keys property as 'return dict.Keys;' with a TODO:
//TODO: guard with a read-only wrapper? Probably so!
GuardedSortedDictionary implements the Keys property as 'return null;'
The implementations should be fixed, in particular the one in GuardedSortedDictionary.
The implementations should probably wrap the keys of the wrapped dictionary in a GuardedCollection / GuardedSorted.