Instructions:

Use arrow keys (or wasd) to move and turn
Hold ctrl/shift to strafe left/right or move up/down
i: change plane (2D), or flip to 3D
c: switch colour mode
p: speedup mode (constant / sinusoidial)
g: toggle grid

Written in javascript, completely self contained (view the source!)
Uses just a line drawing function, and no matrix library.

Created by Osian Haines (2012)