Comment and spacing cleanup
Make ingredients into a list
List comprehensions for brevity
ArgParse for more robust file handling
Now compatible with Py3k
Made indentation optional