GameObject factory and manager