Make 'cabal haddock' define __HADDOCK_VERSION__ when preprocessing.

This is useful e.g. for "writing documentation that links to module A without
explicitly qualifying everything, where A is not directly imported." (see the
discussion in #926)

Fixes #1237.
Document __HADDOCK_VERSION__.
Merge pull request #1238 from 23Skidoo/define-haddock

Make 'cabal haddock' define __HADDOCK_VERSION__ when preprocessing.