So the sparse matrix implementation has begun (and almost ended). In the spirit of python I decided to try using python's built-in dictionaries for my sparse matrix implementation.
With limited experience in deep OOP, I've had to quickly learn the subtleties of OOP. The nature of scope really comes into play in a way that can be quite annoying.
*edit* 2 hours later, I have tasted it and it tastes good.