+htp #15926 Import HostDirectives from spray
=htc add ';' to to-be-encoded characters in URI.Query rendering

Port of https://github.com/spray/spray/pull/927
=htc add missing alias for `US-ASCII` charset
=htc fix parsing of `Cache-Control` header
=htp fix UnsupportedOperationException in `PathMatchers.valueMap2PathMatcher`
=htc accept comma as cookie separator

Port of https://github.com/spray/spray/pull/870
=htc allow `0` as special value `If-Modified-Since` and similar headers

Port of https://github.com/spray/spray/issues/942
=htc fix error message in response parser

Port of https://github.com/spray/spray/pull/930
=htp fix `UnmarshallerLifting` to not obscure missing Unmarshaller errors with implicit diversions

Unfortunately implicit resolution evaluates type boundaries only quite late in the resolution process which can lead to fake implicit diversions errors. Getting rid of the type boundary here make debugging Unmarshaller type class problem easier.
=htp port `FromEntityUnmarshaller[FormData]` from spray, closes #15966
=htp small simplification in tests
=htp reduce set of not-encoded characters in FormData marshalling

Port of https://github.com/spray/spray/pull/918
+htp #15925 Import HeaderDirectives from spray
+htp #15928 Import MiscDirectives from spray
=htc small improvement to `ContentLengthParser`
=htp add one more test
=str - #16048 - Switches to pattern-matching iso getOrElse to avoid allocation in ThunkTab and Flow.apply
Merge pull request #16031 from spray/wip-ported-patches-from-spray-mathias

Forward-port of recent spray patches
Merge pull request #15985 from bthuillier/feature/directives-migration

Spray Directives Migration
+htp #15932 integrate SchemeDirectives from spray codebase