specialize VectorDs so

that way we can provide only the correct constructors for the dim.
can get rid of vector input

close #744
close #670