refactored the CLI interface into own file