Shared Memory and User Input

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

Coding style: Use `QKeyEvent* event` instead.