Added Vector3::TurnCW() and Vector3::TurnCCW()
Refactored all player block placing to go through hooks.

Fixes #1618.
gcc compilation fix.
Replaced a std::hash specialization with explicit type.

std::hash is problematic in gcc / clang, one has a class, the other a struct.
Fixed redstone dust placement on upside-down slabs.
APIDump: Updated the player block placement documentation.

The hooks now have fewer parameters but are called on all player-placed blocks (#1618).
Merge pull request #1686 from mc-server/PlaceBlockRefactor

Place block refactor