vec: convert `append` and `append_one` to methods

These were only free functions on `~[T]` because taking self by-value
used to be broken.