add new project operator
operator: add virtual methods for polymorphism, set new operator
print: use dynamic binding for input operator, handle project operator
@writeToOutputStream
register: add attribute name
scan: write attribute name @register creation