Re #6149. Remove entirely unused file.
Re #6149. Remove renamed ArrayDataSource class.

It is otherwise unchanged from the original.
As the original was left around by mistake, just use that for now.
Re #6149. Remove classes that are unchanged w.r.t. ImageViewer.

Will not compile right now - namespace issues need resolving.
Re #6149. Namespace importing/qualification where necessary.

This generally won't be necessary once everything's merged back into
the same package (& namespace) but it gets things compiling
again right now.
Re #6149. Extend include path so that python module will compile.
Re #6149. Remove RefImageDataSource class.

It was identical to ImageView::ImageDataSource apart from the name change.
Again, namespace qualifications are needed to allow things to compile.
Re #6149. Namespace importing/qualification where necessary.
Re #6149. Remove ArrayDataSource class, which hadn't been changed.

Again, namespace fixed to follow.
Re #6149. Namespace qualification where necessary.
Re #6149. Allow for the absence of the GraphDisplay table.

The RefDetectorViewer doesn't show the table that the ImageViewer has
alongside the line graphs. The GraphDisplay table holds a pointer to
this object in order to populate it. Allow for this to be NULL by
skipping the relevant code in this case.
Re #6149. Remove GraphDisplay and point at ImageViewer version.
Re #6149. Rename RangeHandler & SliderHandler on the 'Ref' side.

They can't be merged because they reference the ui class.
The rename is for clarity as other things are merged.
Re #6149. Minor changes to ImageViewer code to help Ref integration.

Main change is the introduction of intefaces for the Range & Slider
handlers in order to decouple the link to the ui class.
Also a few things moved from private to protected for the benefit
of RefDetectorViewer derived classes (coming soon).
Re #6149. Major changes to RefDetectorViewer to eliminate duplication

...of code w.r.t. the ImageViewer.

The small extensions in RefImageDisplay & RefImagePlotItem compared
to their ImageViewer counterparts have been isolated and these
classes now derive from the ImageViewer ones.

In order to disentangle some things a new class 'RefLimitsHandler'
has been introduced to handle the getting and setting of the values
in the top-right line edits (Peak/Back/TOF Left/Right/min/max).
This is quite a lot simpler than the previous way as the values are
only held by the QLineEdit objects and not separately in addition.
Re #6149. Remove RefIVConnections::peak_back_tof_range_update methods.

They had remained alive from a previous implementation, but weren't
doing anything now.
Re #6149. Make demo executables depend on related library.

I.e. ImageViewerDemo depends on and uses ImageViewer shard library
instead of building all the source files again itself.
Same for RefDetectorViewDemo.
Re #6149. Remove unused RefMatrixWSDataSource class.

It hadn't been changed since forking from ImageView::MatrixWSDataSource.
If it is needed in the future, the ImageView class should be used
following changes to add an interface to the EModeHandler (as done
for RangeHandler & SliderHandler).