replace instanceof checks with overridden methods

Issue #61

this introduces 6 new methods: warnDraw, warnTouch, warnKeys, warnPick,
warnTouchUDM, and warnPress

These methods can then be overridden, and the return value specifies
whether we will give a warning when the matching method doesn't exist
(but only when warnUnimplemented is not set).

Also removes unneed instanceof check by properly overriding impl methods