Added handling close window key event on Mac OS X (Command + Q)
Fix typo in comment
.travis.yml: Don't use quiet flags for commands

The -qq caused Travis CI to sometimes time out while installing
dependencies because it thought the build stalled.
Changes to aura controls.

Makes the aura control method for the "Armor" spell analogous to the one used for the "Protection from fire" spell.

Turns on the aura for the "Lower armor" spell if the spell is active but the aura is disabled. If a protection spell and "Lower armor" are active at the same time on the same target, the lower armor aura is hidden. Previously, the lower armor aura did not appear when protection ended before the end of "Lower armor"; this is now fixed.
Lower armor — added SND_SPELL_LOWER_ARMOR_END.
Levitate — added SND_SPELL_LEVITATE_LOOP and SND_SPELL_LEVITATE_END.

Plus code-style.
Slow down — added SND_SPELL_SLOW_DOWN_END.

Plus code-style.
"Night vision", "Speed", "Telekinesis", and "Slow time" — the completion sound is bound to the caster's current position.

"Incinerate" and "Mass Incinerate" — the completion sound is unbound from the caster's current position.
"Armor", "Protection from fire", "Protection from cold", "Levitation" and "Lightning projection" — the starting sound is bound to the spell origin; the effect sound follows the caster; the completion sound is bound to the caster's current position.
"Lower armor", "Curse", "Paralyze", "Slow down" and "Confuse" — the starting sound is bound to the spell target.
"Harm" — the effect sound follows the caster.
"Raise dead" and "Summon" — the sound is bound to the portal location, and the sound played only when the portal opens; the creature spawn sound (for zombies, demons, etc.) is bound to the spawn point; the completion sound is bound to the current position of the creature before it disappears.
"Fake summon" (by NPC) — the starting and completion sounds are bound to the position of spell target.
"Incinerate" — the starting and effect sounds are bound to the spell target.
Unbind positions of three trap-type spells from the caster:

The positions of active "Create field", "Ice field" and "Trap" spells were originally bound to the caster. This meant that using "Negate magic" always turned off the player's own spells of these types, even if their effects were outside the magic suppression area (circle with a 6-metre radius around the player). The positions have now been bound to the effect locations, as in the "Fire field" spell.
NPCs' attack and damage absorption levels are now lowered (instead of being raised) by 5% per level of Curse spell applied on the NPC.
The player's critical strike chance now depends on values set in melee weaponry scripts (SETEQUIP CRITICAL) and is properly affected by the words of power.
The player's armor class, magic resistance, poison resistance and inflicted damage now depend on buffed attributes and skills instead of base ones.
The buffed Constitution and Mental stats are now taken into account when the health and mana replenishing effects of the MAX and MAR words of power are capped.