implement edge-triggered key press/release

add dynamic reload of all shaders

refactor shader management - resolves #684

(0) -100 -30 -10 -3 +3 +10 +30 +100 tip

mercurial