bkwrds compat: protect against old decode-char
bkwrds compat: add string-match-p
bkwrds compat: protect against missing font-p
bkwrds compat: url-generic-parse-url below v 23
may return a plain vector, not a struct with symbol 'cl-struct-url
in the first position