multiple changes

- add options for testing Microsoft compatibility (TODO: make sure that
they do not also try to build the Unix sources, that they do not get
run when building any other target besides 'ms-compat' (even when
available), and that the compiler will actually work with it)
- more configure checks
- complete some TODOs about moving prototypes into header files
- add some functions from win_joystick.c to unix_joystick.c (with some
changes, namely that they do not work yet)
- stub in OSX_[Disable|Enable]CmdTab functions in unix_keys.c, based on
the WIN_[Disable|Enable]AltTab functions in win_keys.c
- clarify some comments
- add the Sys_ConsoleInput function from win_main.c to unix_main.c
(with some changes, namely that it does not work yet)
- try to make the SysGetClipboardData function in unix_main.c actually
do something, using the one in win_main.c as a starting spot
- add some files that implementing SysGetClipboardData will need on unix
- other misc tweaks