message: Fix Highway validation bug.
  The `pre_validate_vertex` method is called before we have all
  dependencies, so it must not run the fork choice.
  The validation that needs the fork choice can only happen later, in
  `validate_vertex`.
diff: @@ -345,10 +345,6 @@ impl<C: Context> State<C> {
  if wvote.panorama.get(creator).is_faulty() {
  return Err(VoteError::FaultyCreator);
  }
  - let is_terminal = |hash: &C::Hash| self.is_terminal_block(hash);
  - if wvote.value.is_some() && self.fork_choice(&wvote.panorama).map_or(false, is_terminal) {
  - return Err(VoteError::ValueAfterTerminalBlock);
  - }
  Ok(())
  }
  @@ -387,6 +383,10 @@ impl<C: Context> State<C> {
  }
  }
  }
  + let is_terminal = |hash: &C::Hash| self.is_terminal_block(hash);
  + if wvote.value.is_some() && self.fork_choice(&wvote.panorama).map_or(false, is_terminal) {
  + return Err(VoteError::ValueAfterTerminalBlock);
  + }
  Ok(())
  }
  