Proper support for reverting page to earlier state

Before these changes there were cases where restoring a page to earlier state
using $page->snapshot() and then saving would result in weird issues. Another
(minor) fix included here is that Page's output formatting is no longer false
after $page->snapshot() regardless of what it was before calling this method.