Add a cache for glyphs.

This reduces memory consumption for text heavy documents. I tested five
documents and saw hit rates ranging from 97.4% to 99.8% (most of the misses are
due to |width| varying even when |fontChar| matches). On two of those documents
I saw improvements of 40 and 50 MiB.

The patch also introduces the Glyph constructor, and renames the |unicodeChars|
local variable as |unicode| for consistency with the corresponding Glyph
property.
Fix some indenting within OperatorList.
Make fnArray always be a plain array.

This makes the code much simpler, and the extra memory use is tiny -- a vanilla
1000 element array is only 4000 bytes larger than a Uint32Array of the same
size.
Introduce paintSolidColorImageMask command to handle 1x1 solid image masks

See https://github.com/mozilla/pdf.js/issues/4436 for details
Added TC for issue 4436
Sync pt-BR translations with l10n-mozilla-aurora
Merge pull request #4488 from alexandrevicenzi/syncptBRtranslations

Sync pt-BR translations with l10n-mozilla-aurora
Merge pull request #4474 from chriskr/draw-image-subpixel-support

Introduce paintSolidColorImageMask command to handle 1x1 solid image
Merge pull request #4453 from nnethercote/charToGlyph

Add a cache for glyphs
Merge pull request #4478 from nnethercote/plain-fnArray

Use a vanilla array for fnArray
Fixes ignoring of the escaped CR LF
Making src/core/{image,obj,parser}.js adhere to the style guide
Merge pull request #4452 from timvandermeij/core-syntax

Making src/core/{image,obj,parser}.js adhere to the style guide
Merge pull request #4493 from yurydelendik/issue4491

Fixes ignoring of the escaped CR LF
jpgjs performance improvements

see https://github.com/notmasteryet/jpgjs/pull/22
Simulate support of the Int8Array for IE9
Fix for the offByOne-error and small performance optimisations
Merge pull request #4497 from yurydelendik/jpgjs22

jpgjs performance improvements
[Firefox] Lazy load network.js in PdfStreamConverter.js
Fix coding style in src/core/fonts.js