v2.3.4

Two vote-reliability fixes (MRs !165, !166).

- Vote: a broadcast error no longer erases the user's own vote unless the node
  contradicts it. blurtjs retries the same signed transaction, so a vote that
  was already applied comes back as "identical to this vote", and a timeout or
  a 5xx reply gives no verdict at all; both used to clear the optimistic vote,
  emptying the heart for a vote that was on chain and carrying that stale copy
  between views. The rollback now asks the node who voted before reverting, and
  never reverts when the node cannot answer.
- RPC: failover now fires when a node is unreachable. transport.send() reported
  its failures only through its own callback, so error_count never reached
  failover_threshold and the client stayed pinned to a dead node. The retry
  budget is bounded too (it was the library default of 10, backing off to about
  17 minutes), so the threshold is reached in seconds.