Move logic to general base class and remove duplicate code.
# Major fixes:
* Big memory leak fixed, from over 170 million objects to zero!
	* Reported by: @UnAfraid
* Fixed Blessed Spiritshot bonus not being applied.
* Fixed self-effect success being calculated with target instead of
caster.
* Dropped useless/unused effect support for items.
* Fixed NPE vulnerabilities in:
	* `ConditionPlayerCanCreateOutpost`
	* `ConditionPlayerCanSummonSiegeGolem`
	* `ConditionPlayerCanCreateBase`
	* `ConditionPlayerCanTakeCastle`
	* `ConditionPlayerCanTakeFort`
* No more stats attached to skills, they must be defined on an effect.
* Removed BaseMul, now Mul with order 0x01 will replace it.
* Source cleanup.