Added more unit tests
Changes to some operation to reflect change to abstract class