Dev Docs: Describe Serialized Block Header And Block Format

Preview: http://dg0.dtrt.org/en/developer-reference#block-chain

* Replace current description of the block header with a better description.

    * Describe the various version numbers.

    * Describe how the merkle root is constructed.

    * Describe how nBits is parsed and how to correctly create it to avoid negative values.  See also my discussion with @minium on https://github.com/minium/Bitcoin-Spec/issues/3

* Describe the serialized block format used to calculate max block size.

Similar to pull #631, this is background documentation about the consensus-covered stuff for the upcoming non-consensus P2P reference section.  Specificially, the goal here is to document the header format used in the P2P `headers` message and the serialized block format used in the P2P `blocks` message.
One dot is missing and the result isn't aligned;

~~~
02000000 ........................... Block version: 2
~~~