Moved engine-dependent action implementations into prototype.