Restore actions dialog

This PR adds in a simple restore dialog, showing a table of changes that will be performed by a `packrat::restore` call.
You can just call `addCancelButton()` to get a button with default caption and behavior.