Executable interface changed to argparse

Introduced argparse to deal with the variables being passed to the executables.
Additional changes include the move of all non-function code to the end of the
file, renaming of variables (outfile to scoreFile) and the usage of 'with
open(..., w) as output' instead of open(..., w) followed by f.close().