pub fn new_engine(collection: Arc<Collection>) -> Arc<dyn Engine>