Core/Spells: Fixed Shadowstep taking the caster out of combat while it shouldn't
Core/Auth: Battle.net stuff
Verify received components
Core/Battle.net

* Fixed AuthResult codes
* Fixed BitStream::WriteBytes size check
* Fixed comparison operator for packet header
* Fixed channel for client packets without channel
* Implemented loading modules from database
Core/Battle.net: Refactored FCC writing
Core/Cryptography: Added class to generate SHA256 hashes
Core/Battle.net

* Extended AuthResult enum
* Implemented WriteString in BitStream
* Fixed HexStrToByteArray in reverse mode
Core/Battle.net: Fixed encryption
Core/Battle.net: Implemented authserver
Core/Battle.net: Send account flags in auth complete
Revert "BG Gilneas: FIXME TODO!"

This reverts commit cd0f533346805b7308f58be2cdf85363795af9a5.
Battleground: BFG...
Core/Players: Fix haste rating formulas. They're supposed to be the addition, not the multiplication of all available bonuses

- This change matches client formulas
Core/CreatureAI: Implement CreatureAI::TalkToMap for all your map-wide talking needs. Could also replace Battleground::SendChatMessage
Core/Battle.net: Downgrade packet structures to 4.3.4
Contrib: Added client patcher, original author @Fabi
Core/Battle.net: Fixed RealmJoinResult structure for 4.3.4
Core/Battle.net: Changed HandleAuthSession to work with battle.net formatted account names
Core/Battle.net: Use prepared statements in Battlenet::Socket
Core/Battle.net: Use prepared statements in Battlenet::AccountMgr