Initial commit of undo.js