Added a ComponentStore::extract() method to move out a Component

 - and appropriate unit tests
Added a Mananger::addComponent() method

 - renamed findComponentStore() to getComponentStore()
 - cast returned ComponentStore to its concrete type
 - and appropriate unit tests
Small update to documentation and @todo list