Organized the callback functions into different files, added undo/redo