moving cli components into separate module