Refactor. 
Add GameObjectPreferences, the Abstract GameObject class holds all the
setup, Preferences holds the preferences... obviously

Idea:
Move VAO update to GameObject