use data collection ID instead of measurement ID

 * make runAnalysis... into a more complete script to be able to insert
   model data into ISPyB
improve last folder finding, improve parameter handling

 * throw exception when bad parameters are used, require filename and
   data collection Id
 * catch exceptions during pipeline and database insertion steps so that
   we can throw a standard message
put in notify object for ISPyB Oracle test

 * use same port as in NotifyIspyBObserversObject main method
remove unused methods and imports
set experiment to done (through experimentType)

 * after all data collections are done
 * also provide option for setting to ABORTED if an experiment fails
store the start date of a Run

 * this is used for the date in Explore Your Results
set experiment to done in BSSC script
SCATTER-211
Tidy up code
Merge branch 'ispybapi' of ssh://dascgitolite@dasc-git.diamond.ac.uk/gda/gda-scm.git into ispybapi