arrow traversal keyboard controls
support triangles, lazy triangles, head connectors (closes #4)