This includes:
* Giving every data structure a name (e.g. `BeaconChainBlock`)
* Making data structure names consistent (e.g. `SpecialObject` => `SpecialRecord`)
* Arranging the fields within the data structures in a more logical/consistent manner
* Reworking the comments to be more concise and to the point
* Rename some fields for consistency:
* `shard_id` => `shard` (for consistency with `withdrawal_shard`)
* `last_state_recalculation` => `last_state_recalculation_slot` (for consistency with `last_finalized_slot`, `last_justified_slot`, etc.)
* `current_dynasty` => `dynasty` (for consistency with `slot`, `shard`)
* `pow_chain_ref` => `pow_chain_reference` (abbreviations are avoided throughout)
* Various other cleanups