Switch to click for command line processing
Favour click's echo over print

It behaves nicer on poorly configured systems.
Update help formatting to match click's style
Allow setting of common options with envvars

Thanks to click for making this easy.
Use click's built-in version_option option
Use click's builtin test support

Much nicer than all the manual patching.
[Tr] Update click callback to 2.0 signature
Use number of warnings as exit code in fsck
Use click's isolated_filesystem support in tests
Use click's atomic file writing
Switch to click's colourised output
Sync docs with new help formatting

See ec5f3b31a4558a3de5663fa6019d65a3e62733c7.
Document envvar usage
Use click's paging function when displaying long output
Merge branch 'f/click'

* f/click:
  Use click's paging function when displaying long output
  Document envvar usage
  Sync docs with new help formatting
  Switch to click's colourised output
  Use click's atomic file writing
  Use click's isolated_filesystem support in tests
  Use number of warnings as exit code in fsck
  [Tr] Update click callback to 2.0 signature
  Use click's builtin test support
  Use click's built-in version_option option
  Allow setting of common options with envvars
  Update help formatting to match click's style
  Favour click's echo over print
  Switch to click for command line processing