Progress commit of a rewrite of autolabor to draw from the jobs list and other world information.  A lot still to do on this.

DO NOT MERGE INTO THE MAIN BRANCH.  This code is incomplete and only vaguely tested.
Merge branch 'master' into autolabor
Inventory Monitor - first checkin
Finished dashboard, colour coding, trend calculation and charts, material selection screen, mouse support
Fix bug with non-repeating jobs getting protected
Generate correct constraint string for persistence
Refresh constraints on map reload
Add gcc compile fixes
Auto material selection plugin - First push
Select by item name
MouseQuery Plugin
Fix handling of manipulator hotkey in unit search screen
Add filtering to zone creature assignment menu. First steps towards adding autopasture functionality.
Fix location of workshop ui, based on menu width
Fix gcc compile of search plugin
Merge branch 'autopasture'
Merge remote-tracking branch 'remotes/origin/automaterial'
Sync submodules
Merge branch 'master' into autolabor

Conflicts:
	plugins/autolabor.cpp
Merge branch 'search'