shard routing запросов в sync

Ориентиры: #8 (closed) #67 (closed) + уже готовый общий #65 (closed)

Связать query metadata, вычисление bucket_id и выбор connection по topology. calculate_bucket_id() уже общий и должен переиспользоваться

  • по metadata и параметрам запроса вычислять bucket_id
  • по tier + bucket_id выбирать нужный connection механизмом из задачи 6
  • если targeted connection найден — выполнять запрос на нем
  • если metadata нет, bucket_id вычислить нельзя или нужный connection недоступен — использовать стандартный механизм выбора соединения