Make blocks easier to use

This improves the user-facing API to include menu options for button names.

It also reports direction/force instead of x/y, which I believe makes the extension easier to work with.

- `〈button [start ▾] pressed?〉`
- `([direction ▾] of [left ▾] stick)`
Is a switch statement really necessary here? The code might be a bit prettier without it. No worries, though