Refactoring to move page display code into separate class

Idea is to create reusable PDFViewer that will not have dependency on the PDFView (toolbars, find controller, etc).

- [x] Move pages container logic into PDFViewer (?) out of PDFView
- [x] Move thumbs container logic into PDFThumbnailsViewer (?) out of PDFView
- [x] Remove all dependency on PDFView in PDFViewer and classes it's using
- [x] Remove any rendering logic from PDFView
- [x] Isolate PDFPageSource logic and use in PDFViewer, PDFThumbnailsViewer, PDFFindController
- [x] Refactor PresentationMode (minimal, to remove dependency from PDFViewer)

NOTE: The refactoring shall not include any optimization or bug fixes
Won't removing this line reintroduce the issue that PR #3829 fixed?