Added UnitOperationFactory

Added functions, added interface IUnitOperation