Update to 1.14.0

CHANGELOG:
1.13.6 --> 1.14.0
* Modernize the Extension datatype in L.H.E.Extension, following the lead
  of Cabal, to allow negative and positive extension modifiers (turning
  features on and off). You need to worry about backwards-incompatible
  changes if any of the following pertains to you:
  1) If you use the Extension datatype programmatically - it has changed
     significantly (see documentation).
  2) The ParseMode record now has one more field
     (baseLanguage :: Language), which might give you a type error.
  3) The behavior of the (extensions :: [Extension]) field has changed,
     which could bite you if you pass custom extensions in the ParseMode.
     Previously, the ParseMode defaulted to the list of extensions accepted
     by Haskell2010, and if you set the list explicitly you would override
     this. Now, the defaults are { baseLanguage = Haskell2010, extensions = [] },
     and explicitly setting a list of extensions will be interpreted on top of
     Haskell2010. See further the documentation for L.H.E.Extension.

* Add support for the 'capi' calling convention. It is enabled with the CApiFFI
  extension. It's been included since GHC 7.4, and advertised since 7.6.

* Add support for the 'interruptible' FFI safety annotation, enabled with
  the InterruptibleFFI extension.

* Give better error message when lexing newline fails. In particular, fix the bug
  when the parser would crash if the file didn't end with a newline.

* Support unboxed tuple expressions and patterns.

* Fix bug in lexing of primitive integer literals in hex or octal notation.

* Disallow negative primitive word literals
  (such as W# (-0x8000000000000000##)).

* Allow phase control for SPECIALIZE pragma.

* Derive Foldable and Traversable instances for all annotated AST types.

* Fix bug with pretty-printing WARNING and DEPRECATED pragmas.

** 1.13.x

1.13.5 --> 1.13.6
* Allow 0-parameter type classes when MultiParamTypeClasses is on.

* Add support for NondecreasingIndentation. Previously it was always on,
  which is the default behavior in GHC. Now it is on only if enabled, or
  when using the newly added ghcDefaults extension set (instead of haskell2010).
Update to 2.5.12

CHANGES:
2.5.12
  Upgrade to haskell-src-exts-1.14.*