Implemented some of the tests for Substring.
Changed any instances where Assert.Fail() was used to denote a not-yet-implemented test with Assert.Inconclusive() so it's easy to spot any tests which are actually failing.