Use canonical HTML5Shiv for Document polyfill, fixes #211

@jonathantneal See https://github.com/Financial-Times/polyfill-service/issues/211#issuecomment-66268371 for details of the issue that prompted this proposal.  I think on this one using the canonical polyfill makes a lot of sense:

* You don't have to be the only one who maintains it
* It has tests, our current one doesn't
* It doesn't suffer from the bug referenced above

I'm unsure of the distinction between `Document` and `document` and whether the canonical HTML5Shiv can be regarded as a polyfill for the former, since all its references to document are lowercase.  Is it necessary to polyfill the Document constructor?  Is HTML5Shiv doing so in a way I can't understand?