Added vector class documentation.

I'm not completely sure on my understanding of `MockVector`. Also my explanation of a `SparseVector` is kinda ehh...

Refer to #208 
Why do we need to copy this into an abstract vector?