Mat 355

Ticket [[MAT-355]](http://jira.opengamma.com/browse/MAT-355) is to write the super solver, this PR is part way there and is with view of adding in the LAPACK functions needed to do the heavy lifting. It:
* Adds a load more functions from LAPACK in templated form.
* Switches to use `unique_ptr<>` for memory management for templated LAPACK internals.
* Does the double rebase on type changes and incorporates new `real8` and `int4` types.
* Adds end to end tests to make sure the templates fire and clean up correctly.
* Fixes a bug in error reporting, bad arg is always at `-(*INFO)`.

The patches look at bit messy and fiddly, partly because of the rebase, partly because of the switch to `unique_ptr<>` and partly because LAPACK is fiddly, apologies!

__Coverage__
Java: (no change)
build/include 58.7% (no change)
build/src/jshim 	0.8% (no change)
build/src/librdag 16.4% (no change)
src/jshim 	54.3% (no change)
src/librdag 94.3% (down 0.5%, exceptions in LAPACK templates for things like failed convergence not covered).
src/librdag/runners 	95.7% (no change)
src/librdag/test/nodes 96.9% (no change)

If you are fixing things up you may want to replace this with `EXPECT_EQ(RANK, n)` so that GTest will provide more helpful output if this expectation fails.