add -timeout default as constant and use them

- update help message text
- simplify code in init to check for -timeout
contrib: use batched JSON-RPC in linarize-hashes

Batch up to 10000 requests for a ~30x speedup.
contrib: make linearize-data.py cope with out-of-order blocks

Make it possible to read blocks in any order. This will be required
after headers-first (#4468), so should be merged before that.

- Read block header. For expected blocks, continue, else skip.
- For in-order blocks: copy block contents directly. Write prior
  out-of-order blocks if this connects a consecutive span.
- For out-of-order blocks, store extents of block data for later
  retrieval. Cache out-of-order blocks in memory up to 100MB
  (configurable).
Prettify JSON tests and minimize diffs
Merge pull request #5050

772ab0e contrib: use batched JSON-RPC in linarize-hashes (Wladimir J. van der Laan)
Merge pull request #5055

2c930d9 Prettify JSON tests and minimize diffs (Pieter Wuille)
Merge pull request #4979

de10efd add -timeout default as constant and use them (Philip Kaufmann)
Merge pull request #5051

aedc74d contrib: make linearize-data.py cope with out-of-order blocks (Wladimir J. van der Laan)
Merge remote-tracking branch 'bitcoin/master' into bitcoin-sync-2