GDA-6028 add catch clauses for RedoScanLineThrowable at all phases fo the scan.
if thread interrupted to abort a write, then remark the Thread as being interrupted before sending out the DeviceException

really should throw the InterruptedException explicitly but that is too big a job in a release branch
Merge branch 'gda-8.40' of ssh://dascgitolite@dasc-git.diamond.ac.uk/gda/gda-core.git into gda-8.40
Merge branch 'gda-8.40' of ssh://dascgitolite@dasc-git.diamond.ac.uk/gda/gda-core.git into gda-8.40
Updated repaint.
Updated plotting.
Added motor control error with scannable name.
Merge remote-tracking branch 'origin/gda-8.40'
allow MockJythonServerFacade to be given reference to the current scan object to provide correct feedback during unit tests

in the real system the JythonServerFacde would hold a reference to the JythonServer which in turn has a reference to the current scan, so this change is still mocking the real system.