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
Merge remote-tracking branch 'origin/master' into feature/9639_doc_tests_inside_ctest

Conflicts:
	Code/Mantid/Build/Jenkins/buildscript
	Code/Mantid/docs/CMakeLists.txt
	Code/Mantid/docs/runsphinx.py.in
Pass command line arguments to script in MantidPlot

In the case where MantidPlot acts in place of a standard script
interpreter then set any extra arguments after the filename as
sys arguments in the scripting environment, e.g. sys.argv in Python.
Refs #9639
Allow runsphinx_*.py scripts to be called by anyone

The driver script for running the sphinx process can now be called by a
user without any special requirements. The main use case will be
running a doctest individually.

It should be noted that even restricting the run to a single file with the
new -R option will actually still cause Sphinx to read every source file
at least once. This is baked in to Sphinx and cannot be avoided. However,
the config pickling does mean that all source files are only read once and
then after this only changed files are reread.
Refs #9639
Refs #
Remove configuration for doctests within ctest

This is never going to work with the parallel nature of ctest so we'll
stick with the script-based approach.
Refs #9639
Remove separate doctests flag from build scripts

It is no longer applicable.
Refs #9639
Fix uninitialized variable warning.

Refs #9639
Catch case where no argument are passed.

Missed this when moving script around.
Refs #9639
Merge remote-tracking branch 'origin/feature/9639_doc_tests_inside_ctest'