moved CommandTransaction implementation to cpp file