add msg_component_sup
implement supervisor strategy
add msg_component
update docs
add component store
improve code quality