#41 #93 change syntax to Substitute.For<TestClass>(ThatCallsBase.ByDefault), add more tests, fixes