adapter() :: Tai.Venues.Adapter.t()
product() :: Tai.Venues.Product.t()
hydrate(adapter()) :: {:ok, [product()]} | {:error, reason :: term()}