CLJS-810: re-matches returns [] if string is nil

re-find and re-matches would return bogus (sometimes not-falsy) results when
run against a non-string because of javascript's implicit toString on re.exec()
arguments. re-find and re-matches now throw TypeError if given a non-string.