message: Add block_trace for genesis block
diff: @@ -1071,19 +1071,29 @@ void chain_controller::_initialize_chain(contracts::chain_initializer& starter)
  // create a block for our genesis transaction to send to applied_irreversible_block below
  signed_block block{};
  block.producer = config::system_account_name;
  + block_trace btrace{block};
  + btrace.region_traces.emplace_back();
  + auto& rtrace = btrace.region_traces.back();
  + rtrace.cycle_traces.emplace_back();
  + auto& ctrace = rtrace.cycle_traces.back();
  + ctrace.shard_traces.emplace_back();
  + auto& strace = ctrace.shard_traces.back();
  signed_transaction genesis_setup_transaction; // not actually signed, signature checking is skipped
  genesis_setup_transaction.actions = move(acts);
  + block.input_transactions.emplace_back(genesis_setup_transaction);
  ilog( "applying genesis transaction" );
  with_skip_flags(skip_scope_check | skip_transaction_signatures | skip_authority_check | received_block | genesis_setup,
  [&](){
  transaction_metadata tmeta( genesis_setup_transaction );
  - __apply_transaction( tmeta );
  + transaction_trace ttrace = __apply_transaction( tmeta );
  + strace.append(ttrace);
  });
  // TODO: Should we write this genesis block instead of faking it on startup?
  - block.input_transactions.emplace_back(genesis_setup_transaction);
  + strace.calculate_root();
  + applied_block(btrace);
  applied_irreversible_block(block);
  ilog( "done applying genesis transaction" );
  