separates command line code from cluster code