VectorSpace class