Improved efficiency of adding a Component (std::move)

 - Improved unit tests for adding/removing a Component
Added a ComponentStore::get() method

 - and appropriate unit tests