Add extra-html-files, for installing extra html files

For example, you might have an images/ directory in your project, with
images that you refer to from Haddock with:

    <<images/foo.png>>

Then in your Cabal file you would include:

    extra-html-files: images/*.png

And these would both be packaged by sdist, and "cabal haddock" will
install them in:

    ~/.cabal/share/doc/PROJECT/html/images/*.png

Fixes #1167
A few more code simplifications
Updated documentation for extra-html-files
Change more flip mapM_ to forM_
Merge remote-tracking branch 'upstream/master' into extra-html-files
Installation extra-html-docs via proper mechanism
Merge pull request #1182 from jwiegley/extra-html-files

Add extra-html-files, for installing extra html files