assorted changes for supporting GLfloat color channels (not done)