Move Power out of Building and into its own trait

This should allow for non-buildings to provide and use power.
In case anyone is curious: this fixes Utility failing to save map.png after upgrading a map. It would leave the file handle open.