fixing undo! and redo! methods

This is a cope of issue [111]. I have had to make a delete my old fork and create a new one in order to squash my 11 commits. The change log has also been updated