gameobject is now a componentbased system