Reorganised bundles and set up interfaces

between components