OpenRA/OpenRA — pull request #6746 by pchote (2014-10-13 06:56:19+00:00)
Title: Fix ChangeOwner bogosity.

This adds support for changing owner from within map scripts, and fixes the traits that were incorrectly using `INotifyCapture` to update their internal references (pretty much all of them).

The need for these fixes can be demonstrated by adding the following to allies02:
```lua
proc = Actor.Create("proc", true, { Owner = ukraine, Location = DeployPoint.Location - CVec.New(10, 0)})
pbox = Actor.Create("pbox", true, { Owner = ukraine, Location = DeployPoint.Location - CVec.New(12, 0)})
Trigger.AfterDelay(50, function()
proc.Owner = player
pbox.Owner = player
Actor.Create("harv", true, { Owner = player, Location = DeployPoint.Location - CVec.New(7, 0) })
end)
```

Before 543abd3, ejecting the pillbox will produce a soviet soldier that will attack you, and your harvester will not be able to unload.

I have organized this so that changing the owner of refineries or resource storage will update the references, but not grant the capture bonuses (stealing the harvester / resources).