Fix linking issues and failed unit test with Boost 1.56 and newer

Boost 1.56 introduces a linking error in CustomInterfacesTest. The unit test CalculateMSVesuvioTest also fails. 

The linking issue was fixed by providing a '<<' operator for optionals.
​https://github.com/jthornber/thin-provisioning-tools/commit/41354f10f5940c72917eb4205ce5adad26f7a369

It looks like the same seed produces different results in boost version 1.56 and newer. Results are very close, but checking the boost version is probably better than reducing the tolerance.
​http://stackoverflow.com/questions/26506550/consistent-random-number-generation-accross-platforms-with-boostrandom 
​https://groups.google.com/forum/#!msg/bob-devel/EzZwQvxxxYc/GPFZjISsX2oJ 

TESTING: code review and verify that Mantid builds and passes all unit tests with boost >= 1.56

Refs #10329. http://trac.mantidproject.org/mantid/ticket/10329