refactored the suggested MemoryPickleBackend into a subclass of MemoryBackend ; an internal flag in the class decides if we pickle or not.
Also updated the get_multi and set_multi in MemoryBackend to just proxy multiple calls to get/set. This simplified the readability and code organization, though there will be a slight performance drop ( multiple function calls vs direct dictionary access ).
added the generic test case; it passes.
did not commit the ( 2 line addition ) to docs, as it was marked in git-ignore.