Implement selection algorithms and command line arguments