Slight refactoring of key handling

    * Adds a mapping from common ASCII to internal scancodes
    * Renaming for consistency
Refactoring colormap to internal structure/array
Refactor: macro should be capitalized
Refactor video_sync() and friends

    - main thread render loop goes into X11 video driver
    - removes video_sync()
cput_thread() now has correct pthread function prototype
Refactor INTERFACE_CLASS stuff out of disk API
Refactor classic interface to run within its own thread

    * previously this classic interface acted as an oldschool modal dialog (which worked fine with the X11 renderer
      where we actively pumped the event loop)
First cut at basic OpenGLES 2.0 renderer

    * Compiles/runs on Linux
    * X11 renderer is now deprecated
Clean up colormap initialization and fix lo and dhires Medium blue color
Remove a bunch of deadc0de
Get the PC Joystick working with glvideo renderer
Fixes keypad joystick emulation with glvideo

    * This prevents resetting the joystick to the origin too soon when key is being held down
    * Verified doesn't affect legacy X11 xvideo input processing
Fix key input handling in GLUT/glvideo

    * TIL GLUT constants for certain special keys map to ascii (for example GLUT_KEY_ALT_L == 116/'t') ... of course
      this was playing hell with the emulator's key input handling
    * Now we directly convert regular keys rather than pushing them down the special path
    * Also separateds CAPS_LOCK hack into its own inline function
Remove deadc0de key handling paths (leftover from X11)
Refactor : separate glut input handling into its own file
Bugfix : properly handle control-modified keys

    * GLUT sends the raw ascii ctrl-values, so we merely send them along in a "cooked" mode
        + It may be that some strange ctrl combinations (saw CTRL-~ or CTRL-ESC) are not properly handled this way, but
        ... not sure what can be done about this (doesn't seem to be a way to force glut to send us the non-cooked keys)
    * Legacy X11 input continues to be sent as raw values (which arguably is a better way)
Apple2Mac first cut and refactor common rendering code

    * Based on NSOpenGLView and Apple's GLEssentials sample code
    * CVDisplayLink- or NSTimer-driven rendering
    * Works in window or fullscreen mode on Mac OSX Lion or later

TODO FIXME:
    * Breaks Linux/Posix build
    * Cocoa menu interfaces
    * Key/mouse/joystick/gamepad handling
do not use vgl.h, use glUtil.h
Refactor for whitespace and clarity
Refactor to rename Basic.vert and Basic.frag