Glsl component resurrection

All visual examples based on the old component system are functioning again.
Also includes some minor bugfixes.
It's only needed as a bridge to make the old examples work. Since you have expressed interest in writing a component system (and I encourage this), I have not put more effort into cleaning up the old system. The purpose is really to keep the examples running for now, and to serve as a reference component API so we can compare and mix our ideas.