Multiple changes

- Removed the operator -> from shared_component.
- Added support for flyweight components.
- Added the replace functions to manager and storage.