This module defines a Vector as a list of pairs. In the context of QIO, a Vector is the type used to represent a probability distribution.
A Vector over types
a is a wrapper around list of
The "probability" of an object in a Vector, is the sum of all the probabilities associated with that object.
A Vector can be multiplied by a scalar, by mapping the multiplcation over each probability in the vector.