Partial subs. #41 #93

[dave@davesquared.net: squashed into single commit for easier rebase]
Reverting ThatCallsBase option until we clarify requirement and syntax
Moving CallBaseFor tests from SubstituteExtensions to top level acceptance test
Throw on attempt to call base on non-virtual

Throwing CouldNotCallBaseException as soon as abstract/final member is
called.

Removing tests that attempt to configure non-virtual members.
Spiking configuring CallBase using returns
I changed the api to sub.DoSomething().Returns(x => x.CallBase())
Ensuring base method is only evaluated once per call