more unit tests and a fix to the __rmul__ issue.