Added Entity::replaceComponent<T>()