save to branch
save undo state in command itself
Commandcontroller done, history works.