Override mouse outside menu zone with up/down keys

This was already being done when the mouse was inside the menu zone, but
there were cases where you'd still have to 'fight' the mouse for control
of the menu with the keyboard which this commit fixes.
Fix ASCII compiling for SDL screen resize menu fix

The fix to menus responding to screen resizing for the SDL version
changed the declaration of CreateRPGMenu to accept a pointer to a zone
rather than a straight zone, but forgot to make the same change for
ASCII mode.
Handle direction keys in ASCII like SDL does

The ASCII key handling translated the cursor keys into the movement
direction keys, which made menus and large text displays unusable when
those keys were remapped, e.g. customized to vi-keys (hjklyubn).

This commit replaces that scheme with the one SDL uses, which translates
the cursor keys directly into directions that the menus and large text
displays understand.

Also, prevent RawKey/RPGKey sending uninitialized data to the rest of
the game.
Provide alternate libtcod-powered ASCII interface

By compiling the game with both ASCII and LIBTCOD defined, the game will
run with its usual ASCII interface but use libtcod's terminal instead of
the operating system's, allowing custom fonts, custom terminal sizes,
fancy box drawing and for Linux users a way around having to
double-press escape for the key to register (the rationale for this).