message: feat(shell_automaton): always get current head or branch from peer after handshake
  We need to be aware of remote node's current head for bootstrapping to work properly.
diff: @@ -8,6 +8,7 @@ use std::sync::Arc;
  use crypto::hash::BlockHash;
  use networking::network_channel::{AllBlockOperationsReceived, BlockReceived};
  use tezos_messages::p2p::encoding::block_header::GetBlockHeadersMessage;
  +use tezos_messages::p2p::encoding::current_head::GetCurrentHeadMessage;
  use tezos_messages::p2p::encoding::operations_for_blocks::{
  GetOperationsForBlocksMessage, OperationsForBlock,
  };
  @@ -67,7 +68,13 @@ where
  message: Arc::new(PeerMessage::GetCurrentBranch(message).into()),
  });
  }
  - _ => {}
  + _ => {
  + let message = GetCurrentHeadMessage::new(store.state().config.chain_id.clone());
  + store.dispatch(PeerMessageWriteInitAction {
  + address: content.address,
  + message: Arc::new(PeerMessage::GetCurrentHead(message).into()),
  + });
  + }
  },
  Action::BootstrapPeersMainBranchFindInit(_) => {
  let state = store.state.get();
  