Attack boosts and upgrades now support upgrading attack speed

The syntax is the same as for other upgrades, eg:

```xml
<upgrade>
	<!-- ... -->
	<attack-speed value="500"/>
</upgrade>
```

and

```xml
<attack-boost>
	<allow-multiple-boosts value="false" />
	<radius value="5" />
	<target value="all" include-self="false">
		<unit-type name="archer" />
	</target>
	<attack-speed value="150" value-percent-multipler="true" />
</attack-boost>
```

Note that `value-percent-multiplier` is broken at time of writing, but that is not the fault of this change (it's broken in the `develop` branch).

As per the other upgrade tags, the `attack-speed` tag is optional. The animation speed scales the same as the attack speed does.

There's quite a bit of code, but most of it is adapted from the existing upgrade code.