Make 'cabal haddock' always define __HADDOCK__ CPP macro.

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.