Stringify headers in the client

Currently headers are silently dropped if they are not Seqable or String. A common example would be sending a number in a header. In this case, the following is seen:

```clojure
{:headers {"foo" 123}}       ;; drops the header
{:headers {"foo" (str 123)}} ;; OK - "123" sent
{:headers {"foo" '(123)}}    ;; OK - "123" sent
```

This pull request applies toString to all headers. The only alternative (in my mind) would be to throw when an invalid type is seen - simply dropping the header has lead to a lot of confusion.