created an operation class which creates gates that manipulate variables etc. before they enter the arguments of a door/chest