add support for using module as a component