Moves the running logic into CommandLineRunner

This will remove the bloat from the main ice.py file, and make it as small as possible