KEY OFF now implied again on running programs from command line
fixed errors when curses not present
moved sound queue, event checking into backend.py
moved backend imports into main module
removed unused dependencies
moved font loading into backend_pygame; reorganised init_screen_mode to reduce dependency on globals
removed backend.pygame dependency on console_state for mode information, palette
fixed resume errors
fixed width not changing issues appearing after reorganisation
removed backend_pygame dependence on state for cursor shape information
removed backend_pygame dependency on state for cursor position
removed backend_pygame dependency on state for vpage, apage
removed backend_pygame dependency on state for scroll height
backend_pygame: removed some state dependency for attr, excpet where the code is due to move to backend.py
removed backend_pygame dependency on state for initial setup
removed backen_pygame dependence on state for composite artifacts
removed backend_pygame dependence on state for fixed-color tandy cursor
fixed missing set_page in backends, removed direct screen_changed call from console
moved keyboard buffer into backend.py
can not initialise redirect.py as normal since circular import has been resolved