The process_connection hook for mod_ftp must run before the process_connection hook(s) for mod_http2 because http2 attempts a 24-byte speculative read. FTP connections don't send headers, so mod_http2 hangs until this read times out. http2's hook cannot be registered as a successor to ftp's because there are two mod_http2 process_connection hook functions. This change makes mod_ftp register as APR_HOOK_FIRST and before mod_ssl & mod_reqtimeout to ensure that it runs before any other protocol handlers.
Introduce the HOST command (and XWEL command for diagnostics), and support for TLS-SNI provided hostname via an implicit HOST invocation. Corrects headers and fields to ensure the host names are initialized at the appropriate times, and that the orig_server maps to the correct host. This is known to work correctly with the latest Filezilla (uses SNI by default), for both Explicit and Implicit SSL connections on httpd-2.2, but the SSL logic is known to be broken for the data channel on httpd-2.4 (likely not a regression).