Add XRegExp from https://github.com/slevithan/xregexp/tree/d06eff50f87d81d2dd3afc1e854784c38b17bcc4/src
Load XRegExp into Zotero.XRegExp and Zotero.Utilities.XRegExp and make it accessible from translators.
Merge pull request #217 from aurimasv/recognizePDF

Tweak recognizePDF to avoid false positives
Minor documentation update
Merge pull request #221 from aurimasv/misc

Misc changes
Accept two missing letters in object keys (but don't use them yet)

Also:

- 'T' doesn't come after 'X' (but does probably appear disproportionally
  in existing object keys)

This commit has been brought to you by the letters 'L' and 'Y'.
Add lowercase 'j' to randomString() (not used for keys)
Context-menu item delete from library root didn't show a prompt
Remove unnecessary character classes. Add some useful ones.
Make clear that save to server code is non-Firefox only
[Utilities] Deep copy `null` as `null`. Display object type in varDump
Merge pull request #222 from aurimasv/deepCopy

[Utilities] Deep copy `null` as `null`. Display object type in varDump
Strip control characters when inserting notes and displaying reports
Strip control characters when displaying child notes as well
Update version and maxVersion
Eliminate race condition during processDocuments call with multiple URLs
Fix III host code
Merge pull request #226 from aurimasv/processDocuments

Eliminate race condition during processDocuments call with multiple URLs
Properly handle cases where no translator is specified
Don't report web translator errors if there is a parent translator