So because the default values for various properties are constructed as module-level objects, this code runs at module definition time.  Everyone's favorite browser doesn't have Array.isArray, sadly, which brings everything crashing down.

Options: 
* Make our own shim for `isArray` like we already do for various other things.  It's easy to implement a shim with `toString`.
* Load es5-shim in CesiumViewer.  This won't really remove the need our existing `defineProperties` and `freezeObject` shims, since neither can actually be shimmed correctly in ES3, so we just bail.

I think the first option is small enough to be OK.  I'd rather not introduce more dependencies in Cesium Viewer if we don't need to.