Cleaned up the activation pattern for gloo objects.

Basically, GLObject only provides _activate, and all objects now keep
track of _need_something, which they then "do" in the _activate method.
This may add a wee bit more code in some classes, but now at least it
is very clear what happens. This was especially problematic for the
Program class.
fix to last commit
flake
fix _need_update in gloo.variable
Tweaks to program and composite program
Merge pull request #308 from almarklein/scene-gloo-clean

Scene gloo clean