Optimize calculating upkeep on the server
- used to iterating through entire buildings when recalculating upkeep
- now sums the building cost of all the entities and only adds & removes cost as entities are changed
- means upkeep is now only multiplying the cached cost * the upkeep multiplier