Engine: Refactored Character_FaceLocation

Separated the concepts of facing a direction (FaceDirectionalLoop) and a
location (FaceLocationXY). Migrated main direction facing code to
internal functions (FaceDirectionalLoop and FaceLocationXY). Added
validation to the externally visible Character_FaceLocation. Tidied up
the order of functions.
Engine: Corrected spelling of orthogonal

Ortogonal -> Orthogonal
Script API: Implemented eDirectionNone

Used the definition of ChangeRoom (SCR_NO_VALUE) to derive a value for
eDirectionNone, a constant to represent no direction or no change in
direction.
Script API: Implemented Character.FaceDirection

Implemented the Character.FaceDirection scripting command.
Merge pull request #184 from gurok/331_face_direction

Script API: Implemented Character.FaceDirection and eDirectionNone