Fix inefficient component extractions
There were some locations in the code where an inefficient
ArrayExtractComponent
was taking place. Fix these (except
one test location where this is done intentionally).
Also fixed an issue with determining whether an ArrayHandleCast
will cause range problems.
Edited by Kenneth Moreland