add GameEntity and EntityComponent