the file that describes what we're doing
cleaned up the code a bit