rename main class and move it to separate file
base for commit and rollback commands