async fn process_network_block(
    blockchain: &Blockchain,
    block: Block,
    watch_msg_box: &mut MessageBox<WatchMsg>,
    get_next_block_scheduler: &mut FireForgetScheduler<HeaderHash, NodeId, ()>
) -> Result<Option<Arc<Ref>>, Error>