message: Add a CNode ref when calling HandleBlockMessageThread()
  When we process a block in PV we are launching a detached thread
  which uses a reference to a CNode and therefore we need to add
  a reference when running the thread and then release the reference
  when the thread is finished.
diff: @@ -411,6 +411,13 @@ void CParallelValidation::HandleBlockMessage(CNode *pfrom, const string &strComm
  semPV->wait();
  }
  + // Add a reference here because we are detaching a thread which may run for a long time and
  + // we do not want CNode to be deleted if the node should disconnect while we are processing this block.
  + // We will clean up this reference when the thread finishes.
  + {
  + LOCK(cs_vNodes);
  + pfrom->AddRef();
  + }
  boost::thread thread(boost::bind(&HandleBlockMessageThread, pfrom, strCommand, block, inv));
  thread.detach(); // Separate actual thread from the "thread" object so its fine to fall out of scope
  }
  @@ -512,6 +519,12 @@ void HandleBlockMessageThread(CNode *pfrom, const string &strCommand, const CBlo
  LOCK(cs_semPV);
  semPV->post();
  }
  +
  + // Remove the CNode reference we aquired just before we launched this thread.
  + {
  + LOCK(cs_vNodes);
  + pfrom->Release();
  + }
  }
  