mark-whole-buffer function is no harder to understand than the
simplified-beginning-of-buffer function. In this case, however,
we will look at the complete function, not a shortened version.
mark-whole-buffer function is not as commonly used as the
beginning-of-buffer function, but is useful nonetheless: it
marks a whole buffer as a region by putting point at the beginning and
a mark at the end of the buffer. It is generally bound to C-x