allocation optimizations for immutable collections

requesting the Keys or Values of an immutable (sorted) dictionary allocates every time. In scenarios where a dictionary is setup and then used repeatedly, this is inefficient.
Stylecop: please insert an empty line between closing a block and the next line of code.
both here and in the other property you've changed.
[SA1513](http://www.stylecop.com/docs/SA1513.html)