Added throwable upgrades
Changed parts of the upgrade / effect API, now uses "referenced parameters" instead of returning the value (e.g. float damage is now MutableFloat damage)
Upgrades now store their respective item collected by the soldier when necessary (e.g. not for redstone blocks giving the redstone upgrade for infinite soldiers)
Made interfaces ISoldierUpgrade and ISoldierEffect into abstract classes, due to standard implementations of most methods -> cleaner code
Soldiers named with the [NONDISTRUPTABLE] prefix don't die when the player uses the disruptor
Moved entity initializations from the main class / proxy class to its own class
Moved particle handling code from the client proxy to the ParticleHelper class (since it's client-sided anyway and also for centralization)
Merge branch 'master' of https://github.com/SanAndreasP/ClaySoldiersMod