sage-dev: rewrite SavingDict

* now inherits from collections.MutableMapping
* less hacky (but still hacky)
* some more documentation + doctests