WIP: Add GLFW

Not ready for review -- some work is pending. Also will need a proper rebase after the merge of #84 and (then) #85. Note that the # of changed lines here includes the changes from those PRs, so it should ultimately drop 

Tests pass and I got the example demo `app-glfw.py` to at least appear to be working and respond to inputs. Hasn't been tested with a real application (e.g., one that does drawing) yet, though.