Add new "pageopen"/"pageclose" events for usage with JavaScript actions
Add new "pageopen"/"pageclose" events for usage with JavaScript actions

Having looked at the Acrobat JavaScript specification, see https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/AcrobatDC_js_api_reference.pdf#G5.1963437, I suppose that introducing these two new events is probably the easiest solution overall.

However there's a number of things that, as far as I'm concerned, will help the overall implementation:
 - Only dispatch these new events when `enableScripting = true` is set.
 - Handle them *separately* from the existing "pagechanging" event dispatching, to avoid too much clutter.
 - Don't dispatch either of the events if the page didn't actually change.
 - When waiting for pages to render, don't dispatch "pageopen" if the page is no longer active when rendering finishes.
 - Ensure that we only use *one* "pagerendered" event listener.
 - Ensure that "pageopen" is actually dispatched when the document loads.

I suppose that we *could* avoid adding the "pageclose" event, and use the existing "pagechanging" event instead, however having a separate event might allow more flexibility in the future. (E.g. I don't know if we'll possibly want to dispatch "pageclose" on document close, as mentioned briefly in the specification.)

caremerge/pdf.js,macroplant/pdf.js,xavier114fch/pdf.js,showpad/mozilla-pdf.js,nawawi/pdf.js,nawawi/pdf.js,mozilla/pdf.js,showpad/mozilla-pdf.js,Shoobx/pdf.js,macroplant/pdf.js,mozilla/pdf.js,xavier114fch/pdf.js,nawawi/pdf.js,mozilla/pdf.js,timvandermeij/pdf.js,caremerge/pdf.js,Snuffleupagus/pdf.js,timvandermeij/pdf.js,Shoobx/pdf.js,macroplant/pdf.js,Snuffleupagus/pdf.js,timvandermeij/pdf.js,Shoobx/pdf.js,showpad/mozilla-pdf.js,Snuffleupagus/pdf.js