This patch add some C++ support by catching exceptions in mu_check() and
mu_ensure() macros (when compiled with a C++ compiler, of course). In
addition to this, it adds 2 new macros for checking that some expression
throws a particular exception: mu_echeck() and mu_eensure().
A sample test suite for the new features is added too.