PERF: O(n) -> O(1) record within recordArray check

If a record changes, we attempt to re-add it to the array, addRecord only adds unique records to the array but does so with an O(n) indexOf. A proper solution would be for addRecord to utilize an index, unfortunately it does not (yet). Luckily we already have just such an index, that records recordArrays map.

We should strongly consider our recordArrays using these indexes instead of addObjects indexOf, to accomplish this we must ensure that these indexes are maintained. I suspect this is dramatically help costs associated with large amounts of records.

cc @lukemelia @igorT