broadcast RPC bufixes

- check the length of all RPC routes (including self) when determining
  whether to use the select_peer hook
- serialize independently for each target, since LocalTarget does things
  differently