Freeze rspec to 2.X. Ain't got time to upgrade.

Or bleed.
Add a boatload of fields to Location.

The parsing code is ripped out of the parsing in G5Updatable, which
featured a bunch of #try calls. I'd have to bring in ActiveSupport to
get the same effect (and it's a good idea), so I wrote a wrapper deal
instead that rescues the NoMethodError.
Add Client model and deserializer.
Refactor a bit of copy-and-paste.
Add factory/rspec helpers for Client, too.
Add Client#locations association.

It parses the locations out of the client markup and builds and assigns
them to the Client. There are no additional HTTP calls, it's all in the
client's markup.

I tried to use Virtus's strict coercion on the Client so that it would
explode if there was a problem with the location's hash, but it gave me
some trouble and I skipped it.
Set a client_uid on parsed locations.