More work on #7
Closes #11, #1, correctly sets content transfer method based on mimetype lookup?