Introduced ComponentOperator and refactored some TensorOperator related stuff