a Range type with vector-space instances