Support automatic type conversion for files

If the default value of an argument is a text file (same type as
sys.stdin) use utils.tofile to convert command line options to a file.
Arguments with boolean defaults treated as flags

If an argument to a functional has a default value of True or False, use
the option to generate a command line flag. Flags do not accept
arguments, if provided they will pass the opposite of the default value
to the funciton. Closes #10.