Improve LIKE/regex handling.

* Move handling of LIKE patterns to the compiler,
* add a `Search` functinon that takes a regex,
* add support for Postgres’ `~` operator (alias for `Search`),
* enable escape characters for LIKE patterns (fixes #65),
* change parsing of “suffixes” to be less hacky, and
* get rid of the `NotIn` and `NotLike` Binops and std lib functions.
Yeah, I think we need the first approach – because (I think) the final one binds us to a particular library too early. We need the string so the analyzer can look up the function in the appropriate library.

And the middle approach just confuses that distinction a bit too much, IMO.