This is an array list implementation for NumPy arrays, which are otherwise require an O(N) operation to append to. Also implements a time-oriented binary search that finds the first time at or before a targetTime in O(log(N)).