Refactoring of the fitted models cache for composer
The caching of the fitted models is quite compicated now. It raises the problems in multiprocessing mode, as well as potential memory leaks.
Ideas:
- move cache from Chain/Node to the external component, that allow preserving chain fitting results and can be passed as chain.fit(data, cache)
- save cache to disk instead of in-memory representation (e.g. use the pickledb)
May be @YanaPolonskaya also has some propositions as a part of PR #215.