made base gameobject class abstract