Support only Cabal >= 1.18
Add extraSrcFiles, extraTmpFiles, extraDocFiles

For #1