I re-wrote a much simpler Merkle hash computation here:
https://github.com/mr-pandabear/bamboo/blob/b2dd0f392f3be3b2db861bc450268ae88135d987/src/core/merkle_tree.cppSo the problem we will introduce by creating a new Merkle calculation is that we will now have two hashing schemes and need to handle validating each one differently based on block number. This is a little bit ugly. I wonder how bad the construction I had earlier is in terms of the length of the proofs it would generate. If it's not that bad my inclination is to just leave it and we will have slightly non-standard Merkle proofs.