Shared Memory and User Input

Shared Memory objects have been added, as well as preliminary HID input(buttons only)

This became quite the chaos... there's no reason to have this many globals rather than having them as class members.