parseMsg parsing fix.

Calling Read(b) when b is an empty slice doesn't work, of course.

This does not yet check the ProofOfWork in the message.

Related to issue #2.
Move to protocol version 2.
messy proofofwork that works. cleanup in progress.
Nicer ProofOfWork.

Implemented using math/big. This should be fast. Related to issue #2.