misc bug fixes, optimizations, and documentation:

only delete back-references on foreign fields that specify a backref key
deleted extra calls to to_storage in save and _get_list_of_differences_from_cache
simplified FlaskCache
added docstrings