stub for structures building agent class


StructuresBuildingAgent is usable to manage building of a structure
at some TilePosition. The agent will handle cases where the worker is killed,
interrupted or the structure itself is attacked.

The agent is destroyed when the building is completed.
added locking mechanism to lock resources so that no other agent can
use ressources below the "reserved" total amount
added temporary locking mechanism to supplies so that a certain amount
of the available supply total can be reserved not to be used by others until
that amound is "unlocked"

NOTE: the reserved total is substracted from all calls to Supply.getSupply()
but you can still get the real value : self.supplyTotal() -  self.supplyUsed()