Move Power out of Building and into its own trait

This should allow for non-buildings to provide and use power.
See also #5923, which already includes this fix.