Remove nunit dependency

Instead of using nunit methods to cause a failure the AssertEngine throws a a custom exception that the unit test frameworks will register as a failure. We do however lose the extra information that nunit provides when comparing strings.

I tested this with the NUnit, xUnit and MSTest frameworks and all three returned the same results when given the same test methods.