Enforce minimum line widths
Improves rendering performance of annotation layers.

This change does the following:
 * Address TODO to remove getEmptyContainer helper.
 * Not set container bg-color. The old code is incorrect, causing it to
   not have any effect. It sets color to an array (item.color) rather
   css string. Also in most cases it would set it to black background
   which is incorrect.
 * only add border instructions when there is actually a border
 * reduce memory consumption by not creating new 3 element arrays for
   annotation colors. In fact according to spec, this would be incorrect,
   as the default should be "transparent" for an empty array. Adobe
   Reader interprets a missing color array as black however.

Note that only Link annotations were actually setting a border style and
color. While Text annotations might have calculated a border they did
not color it. This behaviour is now controlled by the boolean flag.
Merge pull request #5214 from CodingFabian/optimize-annotation-layer

Improves rendering performance of annotation layers.
Merge pull request #4615 from Snuffleupagus/canvas-enforce-min-line-width

Enforce minimum line widths