cleanup Product.like_any with some arel

Inspired by radar's cleanup in fe77e9cc095b1fb41040270ef697391cb8a5daef, this relies more heavily on arel for query generation.

`.matches` in arel generates `ILIKE` in postgresql and `LIKE` in mysql and sqlite.