First bit of refactoring for splitting.
Second bit of refactoring for splitting.
Created a two-part key for the MicroSurfaceCache.

This helps pave the way for splitting.  (I'm starting to feel like a broken
record.)