Shrinking and expanding vectors

It seems Vector is sufficient for this, or what is your complaint?

Allocated memory for vectors is never returned to the system until the vector itself is garbage collected. There has been discussions about adding such a feature though, since some people have desired it. The memory is reused when pushing after a resize to zero length.