Started to refactor with Commands