Fixed bug when pass in Nil to MerkleTree.create

Passing in Nil will
1. Cause math.log(0) (because Nil.size == 0) to be -Infinity
2. Cause MerkleTree.makeTree to recurse infinitely for not handling empty case