Decouple the current memroy class into action and storage base classes, so that
if users want to implement their own memory, e.g. based on a sql database, they just need to inherit the storage base class and implement the basic operations.
the embedding and storage operations are all implemented in storage class, so that a vdb based memory module is feasible.
This PR is experimental. I'm not sure if decoupling memory will incur additional cost in understanding. Any suggestions or commets are welcome.
Checklist
Please check the following items before code is ready to be reviewed.
[ ] Code has passed all tests
[x] Docstrings have been added/updated in Google Style
Description
Checklist
Please check the following items before code is ready to be reviewed.