Changes after review.

1. Make sure we properly normalize all unit vector-based attributes.
2. Fix perDirectionRadius handling
3. Use IndexDatatype.createTypedArray where appropriate.
4. Handle case where a constant radius is supplied but the supplied directions are not unit vectors.
5. Fix up some doc.