Query URL containing term name instead of term ID on Views Exposed Filters
There's no need to do this in code. You basically need to:


Add relationship to taxonomy term via entity reference field (it would probably also work with term reference)
Add exposed filter using this relationship (search for field Taxonomy Term: Term)


It works fine and you get URL, such as:

recipes-view?tid=vejuu


If you want to have an URL key type-of-meat, you can set it in More drop-down in you exposed filter configuration. The field name is Filter Identifier

I experienced problems with using features trying to prevent duplicates created by joining taxonomy terms.