Re #7462. Add a live button to the MWRunFiles widget.

By default the button is hidden and disabled, so existing uses of this
widget will be entirely unaffected.

A property has been added so that the button can be set to be always
hidden and disabled, only shown if able to connect to the default
instrument or always shown (but only enabled if able to connect).
Selecting the live button will disable the file text box/browse button
& vice versa.
Re #7462. Use MWRunFiles live button in Step Scan GUI.

Replacing the previous separate QToolButton widget.
Re #7462. Move a slot from public to private.
Re #7462. Move handling of stopping live algorithm up to MWRunFiles.

Moved up from CustomInterfaces::StepScan for reuse.
Re #7482. Add setters to toggle state of live button.

Can now be enabled/disabled & checked/unchecked from the outside.
Re #7462. Remove irrelevant const's in declarations.

Having const on a value parameter in the declaration is meaningless.
It can still be used in the definition where it does have an effect.
Re #7462. Add protection against trying to use with invalid stream.

The Step Scan Interface can only be used with event streams. It now
gives an error message if trying to use it with a histogram listener,
or if StartLiveData fails for any other reason. Previously, there would
be an uncaught exception thrown.
Merge remote-tracking branch 'origin/feature/7462_mwrunfiles_gains_live_button'