Made GameObject code and GameComponent more robust