ParseUtils
I was looking at the code for ParseUtils, and noticed some weird things. First, for int GenerateOrderedVector and GenerateUnOrderedVector do exactly the same thing (there is no ordering). For double they are different, but I am not sure if the ordered version is correct. Also, I noticed that throughout the code most (perhaps even all) times we use GenerateOrderedVector we do not actually need (or want) to order the values.
Perhaps we should eliminate the distinction between ordered and unordered for these functions and have just a single GenerateVector?