Add arrayTypeSize option, alternative to passing constructor in arrayType

The 'arrayType' option allows the type of the array for voxels to be configured, but it requires passing a constructor - problematic in some situations since it cannot be directly JSON serialized. For example, voxel-client/voxel-server sends the voxel-engine settings over the network as JSON, or other modules may want to otherwise persist these settings, but `arrayType: Uint16Array` doesn't make it through.

So this PR adds an alternative option, arrayTypeSize - an easily-serializable integer, representing the number of bytes for the typed array (1, 2, or 4 for Uint8Array, Uint16Array, or Uint32Array, respectively).