Always like a good box pushing puzzle. Really like your addition of the undo button; easier to recover from mistakes :p