Used not_implemented_for decorator
Imported division from __future__
Refactoring...
More refactors
Refined docstrings