Add elementary file upload support, and support for multi part forms.

Closes #54 and #191.