do not call BuildMerkleTree() unnecessarily twice

block.BuildMerkleTree(); is called twice for no reason. Just a few lines above its called the first time.
We dont need to check for empty container here before the block.vMerkleTree.back() call, because block.vMerkleTree can not be empty at this point, because block.vtx.empty() has been checked before.