I found the python proofid computation didn't match the node during
testing. There is currently no code using it, but it is worth fixing to
avoid somebody else from getting trapped in the future by this bug.
I added a proofid check to the messages.py unit test, and since I had to
deserialize the test proof I also added checks that will help
documenting the serialized proof content.