Added recursive init for submodules