Shared Memory and User Input

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

These files shouldn't be created in the source tree at all, but stored in the build directory. I didn't actually know citra doesn't do this.