Prasoons vector

Prasoon,
I know you got a little busy, so I tried to clean a few things up in vector.py for you and Sachin. Commit logs should explain the main changes, but there are some others too - just ask. Feel free to either merge it or copy/paste chunks of it into your code.

Oh, and if/when you merge this, your sympy/sympy PR will be updated.