CHECKPOINT:  pulling interception grammars out of SmartInstance into ExpressedInstance<T, TReturn, TPluginType>
CHECKPOINT:  rebuilt SmartInstance to use 2 parameters
CHECKPOINT:  the main assembly compiles again after the SmartInstance changes
CHECKPOINT:  all compiling except for the interception testing.  Need to apply expressed to ObjectInstance
CHECKPOINT:  converted OBjectInstance to the new expressed model
got the SmartInstance<T> expressions right so interception actually works.  Closes GH-176
eliminated a little duplication to Close GH-175
filled in a bunch of missing Xml comments.  What fun.
eliminated some small TODO's in teh code
added a multi-threaded test to try to abuse Cache.