Builds on #1294.
This cleans up the spec to be 'higher level' psedocode that may be easier as a reference to parse than the C++ dump from the reference implementation.
Also makes abundantly clear the anti-DoS requirements for validation, hopefully.
note: not that anyone should implement bitcoin in python...