change vmvector to use a tree instead of an array
I thought this was already filed but I can't find it. This covers changing vm_area_vector_t to use a tree instead of an array. The data structure does not scale well for uses with frequent insertions and removals, as it shifts the whole array. It was originally designed for uses with few insertions and many lookups. Today we can have very large all_mem_areas as well as dynamo_areas if we get beyond our vmm reservation.