Under development, superclasses to simplify creating custom operation subclasses