Add support for Quantized-Mesh terrain tiles with more than 64k vertices

CesiumTerrainProvider, QuantizedMeshTerrainData, and related workers have been updated to handle 32bit index buffers for terrain meshes.  We see these types of dense meshes when noisy high resolution data is processed, or high resolution data containing features not well suited for mesh simplification (e.g., extruded building footprints baked into the input terrain data).

I've also tweaked the coefficients for ambient and diffuse lighting to brighten the globe when vertex lighting is enabled. cc @pjcozzi 
I have added unit tests for `createTypedArrayFromArrayBuffer`.

In `createTypedArray` the second parameter is `indicesLengthOrArray`; I think this function signature is fine as it just forwards the parameter to the Uint16 or Uint32Array constructor.  It would certainly be doable to refactor this to use an `options` object instead, but I'm not sure that it is any more readable/clean over the addition of the `createTypedArrayFromArrayBuffer` variant.