Update d-t-m to a0c4858g (master branch)

More robust error checking.
Update Annotator to d1797fd1 (pdf-update branch)

Changes in: PDF, and TextRange plugins
Attempting to update to PDF.js upstream v1.0.473
Use different insertation method. WIP

Old method:
 - First PDF.js does it's magic, and redirects the page from the
   original document to it's own HTML content (the viewer)
 - Then embed.js injects the Hypothes.is code to the HTML page.

New method:
 - We embed our code directly in the viewer

Details:
 - I created a fork of viewer.html, the only change being
   that it also includes a reference to our embed script.
   PDF documents are rendered using this viewer
 - I have created a different embed.js version, called embed-pdf.js,
   tailored for this specific use-case. The main difference is that
   it actually uses eval() to run the code, instead of inserting a script
   tag. This was necessary because Chrome really, really hates inline
   JS code in extensions, and it's probably impossible to configure
   a CSP which would allow this.

Limitations:
 - Loading PDF.js automatically loads Hypothes.is, too, which
   means no PDF.js without H.
   (But we want to avoid PDF.js until required by H anyway,
   so that's not a real limitation.)
   See https://github.com/hypothesis/h/issues/1120
 - There seem to be with some high-level code incompatibilities
   with the PDF.js code.
   See https://github.com/hypothesis/annotator/issues/69
Tune PDF extension deployment

 - Don't load the Document plugin
 - Change timing (to wait for PDF initialization)
 - Add support for proper URL and metadata extraction
Avoid loading the Document plugin over PDF in FF
Shadow some PDF.js extension scripts to alter insertion
Conditional loading of PDF.js
PDF: fix loading for FTP and local giles
Implement PDF.js -> native transition
PDF: fix cases then user navigates from PDF to HTML