cleanup
add an arithemtic type vector
revert last commit; it is too highly experimental