Currently we just use System.Exception, but this is not specific enough.
N.B. we have investigated use MbUnit's own assertion methods dynamically as we
do with xUnit and NUnit, but have found that due to it's unique implementation,
it's better to raise our own exception (MbUnit's stacktraces can't be cleaned)
which is the motivation for switching to a custom "AssertionFailureException".