Properly flatten parameters into strings when "!" is used.

The "!" was being attached to the wrong part of the string.  This is a
parser bug and didn't affect any of the default scripts, but is fixed for
correctness.
Verify stance values are valid when parsing the script.
Monk: Fix invalid stance names used to describe Jab.

Fixes ticket 477 by @TuhMuffinMan.
Rogue: Move Marked for Death to the short CD icon.

It's off-GCD and has a one minute CD during boss fights, so move Marked
for Death from the main attack the short CD icon.
Warlock: Improve Havoc suggestions for destruction.

Only suggest Havoc when there are multiple targets and suggest casting
Havoc on a secondary (other) target.

Move Havoc to the short CD icon so the player can decide whether to
interrupt the main attack to cast Havoc.
Shaman: Lava Burst has no cooldown during Elemental Ascendance.
Shaman: Only suggest Ascendance if not in Ascendance.

Ascendance does not go on cooldown until after the buff expires, so do not
suggest Ascendance if already in Ascendance.
Mage: workaround possible bug in SimulationCraft frost mage APL.

Frost Bomb has a duration of 12 seconds but the APL is requesting that it
be refreshed when fewer than 10 seconds are remaining.

Noted in ticket 475 by @draak2883.
Extend Texture() to take a spell ID as well as a texture string.
Add translation for SimulationCraft's "cancel_buff" action.
Update default scripts to SimulationCraft git master from 2014-11-29.