Extract Venue::Search from VenuesController#index

`Struct` is kind of my go-to building block, although it's not really justifying its existence here, which makes me realized I didn't push this refactoring far enough. I just pushed another commit which tightens things up quite a bit, and should justify the usage of `Struct`.