Move Power out of Building and into its own trait

This should allow for non-buildings to provide and use power.
It feels a bit off to repeat `Power` here, and we generally use `HP` to refer the specific numeric value.  How about `ScaleWithHealth`, with a `Desc("Scale power usage by the ratio of maximum health.")`?