Improve CLI: print banner and require output format
Refactor and clean CLI, add missing initial functionality
Add test suite for Steps.java