Pull Request for Issue1006 - Can't sort/filter by run when opening scans in GSE

Added a new ui class AMSortFilterScansWidget, which is a specialization of AMSortFilterWidget, designed for the filtering of Scans - including a combo box for filtering runs (defaults to showing all runs). 

This involved adding some functions to expose data required by the widget/proxy models to get the list of runs.
Ah yes! Thank-you Qt. I've altered that up, and made the maps return as a const QHash<int, QString> now, so modification should be impossible too.