[MAT-426] Add in the  izy template headers.

This adds the majority of the headers allowing access to OG-Izy
with view of implementing PTS.
[MAT-426] Adds in wiring for {a,}cos()

This adds in the plumbing for acos() and cos() nodes and the
tests in DOGMA.
[MAT-426] Add jinja2 templating to infix op runner.

The infix operation runner templates need flow control adding, to
do this the template is converted to use jinja2.
[MAT-426] add times() test and patch in non-running tests.

Adds the times() node and does a full test for it.

Patches CMakeLists.txt to ensure tests that weren't included now
are.
[MAT-426] Adds in rest of OG-Izy.

This adds in the rest of the OG-Izy header and partial template
specialisation required to access OG-Izy in a domain invariant
manner.
[MAT-426] Added asinh node and moved method ordering to alphabetical

This adds the asinh() node and switches the lists to alphabetical
ordering to make locating nodes easier.
[MAT-426] Added atan() and exp()

Adds in the atan() and exp() functions.
[MAT-426] Added rdivide into generator and more trig nodes.

Add in the rdivide() function to the generator and the sin(),
sinh(), tan() and tanh() nodes.
[MAT-426] Add test code for bsx infix ops

Adds in the test code and generator for binary singleton expansion
operations.
[MAT-426] Started work on the generator for function tests.

Initial work for the code generator which will generate the unit
tests for the pure maths functions.
[MAT-426] Code refactor to work in further complex domain tests.

This refactors the code generator to add in support for the same
level of testing as the real domain, but in the complex domain.
It also adds in better commentary regarding what's being tested.
[MAT-426] Add comment for mcode script.

Adds a comment to the mcode test generation script indicating
invocation method.
Merge pull request #126 from OpenGamma/MAT-426

[Mat-426] Wiring in OG-Izy and using it in working implementations.