[MAT-343] Always specify expected exceptions

The use of ASSERT_ANY_THROW/EXPECT_ANY_THROW allows for things to
go wrong that we're not expecting, and still get a test pass. This
commit changes all ASSERT_ANY_THROW and EXPECT_ANY_THROW for
ASSERT_THROW and EXPECT_THROW.

Additionally, after doing this it was discovered that conversion
of real diagonal and real sparse matrices to Complex16AoA was not
actually working, and was throwing an rdag_error. Therefore,
support for attempting to do this has been removed from
Complex16AoA.
Merge pull request #108 from OpenGamma/MAT-343

[MAT-343] Always specify expected exceptions
[MAT-388] Merge stages of expression translation

Now that cleanup is handled by shared_ptr, there is no need to
separate the two stages of expression translation in to traversal
of the Java tree and construction of the RDAG tree.
WIP