First version of a system manager.

Auto-redistributes workers when changing what to build, directly before the player's next turn
and when taking energy buildings offline.
Priorities are fixed atm.
add a dialog to control manger settings

Add a dialog to control priorities and whether the manager is active on
a per system basis. Change priority list into a map so it's auto-sorted
by priorities.
shorten button strings
Flesh out "safe moral" and add "max industry" features.

Add dialog controls for both.
"safe moral" is in effect only if expected remaining build time is 1,
"max industry" only if it's not. If we didn't buy till 2 remaining
turns are over, use as few workers as possible then
(except for "safe moral" of course).
improve workers sanity check
distribute any workers which remain after priorities have been processed
don't produce a resource if its store is already full
add manager error reports
take energy-consuming shipyards on/offline according to what we build
add a check for expected famine
allow for insufficient food production
add "neglect food" feature
fix an infinite loop

Don't try to reduce the number of industry workers in case the building
was bought.
Don't take moral prod shipyard offline; don't take online if not enough energy.
avoid an infinite loop
soften an assertion which got broken via starbase upgrade
generate "not enough worker" message only if manager inactive

As the manager redistributes all workers anyway afterwards,
it makes no sense to tell the player should do something about
the workers in this system.
Don't run the manager when taking energy consuming buildings off/online.

It's more annoying than useful for now.
Factor code; fix issues with incorrect display after manager execution.
fix indentation