rename variables to disambiguate meaning in the face of an additional socket for handling input
coerce value to an integer in register
connect screen_server to input_server
define key_handlers for button presses
move constant definition to top level module
input server

Based directly on screen server
start up input server and connect it to mmu
define key release
parse input presses
flesh out details of read_byte
define reti
mmu accepts joypad interrupts
cpu processes joypad interrupts
assign mmu as interrupt_handler for input
request joypad interrupt on keydown
Implement joypad input.

Default Keys:
    wasd -> Arrows
    k -> a
    m -> b
    j -> start
    n -> select

Due to the incredibly slow nature of this emulator keypresses must be held for a few seconds to register.
I ended up modifying my key repeat timing to get the buttons to register.

Hopefully this will be fixed if I ever figure out the speed issues.

Closes #23