Refs #7570 Swapped CubicSpline for BSpline.
Refs #7570 Fix issue with the BSpline swap.
Refs #7570 Swap to using ConvertToPointData algorithm.
Simplify shared_ptr extraction from Python object

Also avoid using the raw Python C API in favour of the boost python wrappers to
ensure that the reference counting is dealt with properly
Refs #9513
Fix PythonAlgorithmTraitsTest

The object returned from the factory now has been downcast to the
correct type in Python meaning in the tests the methods are bypassing
the base class in some cases.
Refs #9513
Refs #9343 Add unit tests for indirect common script.
Tidy up of runsphinx template. Refs #9639
Allow single file selection for sphinx run

Refs #9639
Enable sphinx to be run without MantidPlot.

Refs #9639
Separate the Sphinx doctree directories by bulder type.

Each builder type now has a separate environment so that the order of
running the targets doesn't make a difference. Shared doctree directories
meant that running doctest first just in vanilla python wouldn't
generate the screenshots and running the html target wouldn't reread
the unchanged source files to generate the images. It forced doctest
to run in MantidPlot and do the screenshot generation.

Refs #9639
Run docs-test target with vanilla python.

Refs #9639
Add individual rst files as ctest targets.

They can be disabled by turning off the SEPARATE_DOC_TESTS cmake option.
Refs #9639
Turn off the separate documentation tests on the build servers

They will instead just run the single global target through
MantidPlot that will be much faster than running them indivually.
Refs #9639
Update ctest doc tests for multi-config generators.

Refs #9639
Use a separate doctree directory for each file in single file mode.

Refs #9639
Fix problem with overriding SEPARATE_DOC_TESTS variable.

Refs #9639
Fix bug with not executing doctests in MantidPlot properly.

Refs #9639
Re #9682. Added resetData method to Interpolation

Cleaned up the unit tests a bit so that it's easier to spot where errors are coming from.
Re #9682. Expanded unit tests for Interpolation

The edge-cases of an interpolation are now clearly separated and checked in a uniform way.
Re #9682. Implemented binary search

Replaced the linear search with a binary search and added unit tests.