vec: remove BaseIter implementation

I removed the `static-method-test.rs` test because it was heavily based
on `BaseIter` and there are plenty of other more complex uses of static
methods anyway.

This is a huge step towards being able to implement a new `for` loop but it's going to be a bit of a pain to land... The vast majority of `for` loops now use external iterators.