Fuzzy search support for PostgreSQL pg_trgm and levenshtein extensions.

This adds support for multiple fuzzy search methods: String::Approx, PG Levenshtein, and pg_trgm. 

Should be a good, clean patch.