Allow range<T> as hash-table key
Allow range<T> as hash-table key

Some methods in storage_service.cc want to return an
unordered_set<query::range<dht::token>>. This patch adds the missing
hash function for a query::range<T> to make it usable as a hash-table key.

The hash function we used is a trivial linear combination of the range's
start and end hash function - the same function used by Cassandra's
AbstractBounds.hashCode() so it is probably "good enough".

Signed-off-by: Nadav Har'El <625169824b719df98706d88646d0aae6f368ae4d@cloudius-systems.com>

eklitzke/scylla,senseb/scylla,stamhe/scylla,shaunstanislaus/scylla,duarten/scylla,scylladb/scylla,linearregression/scylla,shaunstanislaus/scylla,senseb/scylla,glommer/scylla,kjniemi/scylla,victorbriz/scylla,gwicke/scylla,asias/scylla,respu/scylla,raphaelsc/scylla,victorbriz/scylla,wildinto/scylla,acbellini/scylla,phonkee/scylla,capturePointer/scylla,eklitzke/scylla,respu/scylla,linearregression/scylla,justintung/scylla,rentongzhang/scylla,senseb/scylla,rluta/scylla,shaunstanislaus/scylla,asias/scylla,raphaelsc/scylla,capturePointer/scylla,guiquanz/scylla,stamhe/scylla,linearregression/scylla,bowlofstew/scylla,kjniemi/scylla,bowlofstew/scylla,kangkot/scylla,scylladb/scylla,kangkot/scylla,gwicke/scylla,aruanruan/scylla,asias/scylla,dwdm/scylla,acbellini/scylla,aruanruan/scylla,tempbottle/scylla,acbellini/scylla,avikivity/scylla,avikivity/scylla,dwdm/scylla,wildinto/scylla,duarten/scylla,raphaelsc/scylla,rentongzhang/scylla,scylladb/scylla,glommer/scylla,gwicke/scylla,avikivity/scylla,rentongzhang/scylla,phonkee/scylla,scylladb/scylla,kangkot/scylla,justintung/scylla,rluta/scylla,rluta/scylla,phonkee/scylla,eklitzke/scylla,kjniemi/scylla,capturePointer/scylla,justintung/scylla,guiquanz/scylla,tempbottle/scylla,victorbriz/scylla,bowlofstew/scylla,respu/scylla,wildinto/scylla,glommer/scylla,guiquanz/scylla,aruanruan/scylla,duarten/scylla,stamhe/scylla,tempbottle/scylla,dwdm/scylla