File uploading. Refactored http::serve.

Now there is support for forms encoded as multipart/form-data.
Fixed incorrent length reported for binary content
Binary file corruption/truncation test.
Don't show large files in debug messages.

Also fixed the /file-echo example throwing an error when an empty
form is submitted.
Limit HTTP request size. http::error-response proc

We now handle 'Expect: 100-continue' and send error 413 "Request
Entity Too Large" before aborting the connection when the request
is too large (>16 MiB by default). This works with cURL but
browsers like Firefox and Midori that don't use 'Expect: ...'
simply report a reset connection.