MultiData parsing doesn't handle preamble properly
`httpclient` overhaul triggered this bug in Jester. It now crashes on multipart message with non-empty preamble part.
Example code:

``` nim
import jester, httpclient, asyncdispatch, tables
from nativesockets import Port
from os import sleep

proc runServer() {.thread.} =
  settings:
    port = Port(1234)
    bindAddr = "127.0.0.1"

  routes:
    post "/mp":
      let fd = request.formData
      assert fd.hasKey("foo")
      resp("OK")

  runForever()

  echo "done"

var t: Thread[void]
createThread(t, runServer)

sleep(1000)

let url = "http://127.0.0.1:1234/mp"
var md = newMultipartData()
md.add(
  name = "foo",
  content = "xyz"
)

echo "This works:"
echo postContent(url, multipart = md)

let client = newHttpClient()
echo "This crashes:"
echo client.postContent(url, multipart = md)
```

This fails with the following error message:

```
Traceback (most recent call last)
test_multipart_jester.nim(37) test_multipart_jester
httpclient.nim(1109)     postContent
httpclient.nim(1088)     post
httpclient.nim(1037)     request
httpclient.nim(1021)     request
httpclient.nim(938)      parseResponse
httpclient.nim(154)      httpError
Error: unhandled exception: Connection was closed before full request has been made [ProtocolError]
```

Here's the reason: old (deprecated) and new `postContent` versions differ in HTTP they output; in particular the new version's output has an extra empty line before the first boundary. This line should be considered part of the preamble (as specified in [RFC1341](https://www.w3.org/Protocols/rfc1341/7_2_Multipart.html)), and ignored.
