Fix crits breaking multi-hit moves

If one hit crit the rest would negate the atk penalties/def boosts as
well

Also I moved some stuff around to decrease redundancy
Chain stat modifiers in the proper order

10: Figure out a way to apply these directly to the stat later
...
6: Target Ability
5: User Ability
4: Target's Ally Abilities
3: User's Ally Abilities
2: Target's Item
1: User's Item

To be honest it's mostly for posterity's sake as well as to match the
soon-to-be-corrected base power modifiers. At the moment all stat
modifiers are either *1.5 or *2 which have the same result no matter
which order you chain them in. However a mod or ability/item in the
future could add a value that isn't as clean.
Fix room auth's not being saved
Merge pull request #367 from Slayer95/patch-1

Fix room auth's not being saved
Merge remote-tracking branch 'upstream/master' into damage
Chain base power modifiers

onBasePower events now affect the base power modifier as opposed to the
base power directly. Also some moves had their base power changes moved
from basePowerCallback to onBasePower. These moves affect the modifier
and not the base power.

Note: The effects of weather and burn are still incorrectly applied as
base power modifiers
Chain base power modifiers in proper order

8: User Ability
7: Target Ability
6:  User Item
5: Target Item
4: Move Modifers
3: Other User Modifiers (Helping Hand, Charge)
2: Other Target Modifiers
1: Field Modifiers (Water Sport, Mud Sport)
Merge pull request #368 from V4Victini/damage

Many Damage Fixes
Fix typo in Sheer Force
Chain Analytic and Sand Force
Chain Heatproof
Chain Burn

...reluctantly
Fix Technician
Update Seasonal: Make scary costume Trick special

It makes more sense that a scary costume attack is Special.
Added new aliases
Merge branch 'master' of https://github.com/Zarel/Pokemon-Showdown
Merge pull request #370 from bumbadadabum/master

Added new aliases
Fix Octoberfest set builder

Pokémon could lack Trick if they would have gotten it as their third movement from randomSet. This is now properly dealt with. (Note that no OF-pokémon gets Present from randomSet.)
Remove a variable not needed anymore
Properly Implement Ring Target