Vector::provider is rw

Thought a lot, did almost nothing. Still unsure how to handle
things, especially with respect to buffering