Backport ActiveRecord::Base#update_columns

* from ActiveRecord 4.x
* Supports quick, validation-free update of more than one column
  in a single UPDATE
Hits and mappings, together at last

* Hits may now belong to a mapping
* Establish three-step update for this belongs_to using new table/model HostPath/host_paths:
  * host_paths are created from hits (pure SQL)
    (host_paths is the smallest set of paths for a site that we can operate against)
  * host_paths' mapping IDs are created by ActiveRecord batch on c14n'd path
  * Hits' mapping IDs are refreshed from host_paths (pure SQL)
* Steps can fail independently (not transactionally) as they're idempotent
* Current assumption that mappings source paths are immutable (though
  we may need to change HostPath.where(mapping_id: nil) to acknowledge editing, this
  will slow things down)
* HostPath is more or less our URL set, though can't reasonably be called that because
  although we could construct a complete URL set from this, it doesn't by itself have
  the component parts of a URL.
Show mapping-sensitive info on the hits page

* Hide errors that now have a mapping
* Indicate in muted-text what a hit was and what the mapping says now
* Text of "Check mapping" changes to Add Mapping / Edit Mapping as appropriate
HitsMappingRelations.refresh! should cope with c14n'd query string
Mappings update their hits on save

* Also unlink old hits when path changes
Import of either new hits or mappings should refresh relations
Refresh operations to $stderr, not logger.info

* Otherwise it doesn't look like anything is happening for minutes
Do linked hits updates in batch

* There may be many, and #find will be slow