GL line feature

Sending this PR against master because of how I rebased my local gl-line-feature branch against an updated master branch.
You got caught in the middle of the testing changes.  Now, things like this should go in `examples/`.  Once, I finish the developers' guide maybe you can make it a selenium test :wink:.