std: Optimize vector construction

There are a multitude of methods to construct vectors, all of which seemed to go
through various separate paths to get constructed, many of which are using
unsafe code. This commit attempts to consolidate as many of these paths as
possible to just a few methods to construct a vector.

The obvious candidate for a construction

Whenever grow() is used with a byte, it should be able to get compiled down to a
memset(). Beforehand, this