Namespacing, adding component and factory