Assignment 02

This assignment took much longer than I expected, perhaps about 5 hours. I started working on the tasks from the tasks.txt and was able to get it working based on the given tasks, but then ended up having to go back and spend a good chunk of time redoing things to have it match what it seemed the tests expected. Unfortunately I still get a KeyError when tests.py tries to use mimetypes.types_map on line 333, since os.path.splitext(filename)[1] seems to generate an empty string, and I haven't been able to figure out why this is happening yet.