controllable robot example
API lifecycle methods; install renamed to doInstall
getter can have documentation
tidied up context; context now uninstalls all APIs on reset
added mouse state API for retrieving mouse position/button state
use mouse state API