Better message for incompatible inits
Slight shakeup of vector, mostly to the ctor