[gl.head] actually implemented

and a lot of if (sym == gensym(..)) {...} else if ... stuff changed to
a much more manageable scheme.