diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2014 Gabriel Gonzalez
+Copyright (c) 2016 Gabriel Gonzalez
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without modification,
diff --git a/exec/Main.hs b/exec/Main.hs
--- a/exec/Main.hs
+++ b/exec/Main.hs
@@ -1,7 +1,7 @@
 module Main where
 
 import Control.Exception (Exception, throwIO)
-import Data.Monoid (mempty)
+import Data.Monoid
 import Data.Traversable
 import Morte.Core (typeOf, pretty, normalize)
 import Morte.Import (load)
diff --git a/morte.cabal b/morte.cabal
--- a/morte.cabal
+++ b/morte.cabal
@@ -1,11 +1,11 @@
 Name: morte
-Version: 1.6.1
+Version: 1.6.2
 Cabal-Version: >=1.8.0.2
 Build-Type: Simple
 Tested-With: GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.2, GHC == 8.0.1
 License: BSD3
 License-File: LICENSE
-Copyright: 2014 Gabriel Gonzalez
+Copyright: 2016 Gabriel Gonzalez
 Author: Gabriel Gonzalez
 Maintainer: Gabriel439@gmail.com
 Bug-Reports: https://github.com/Gabriel439/Haskell-Morte-Library/issues
@@ -65,7 +65,7 @@
     Build-Depends:
         base                 >= 4        && < 5    ,
         morte                                      ,
-        optparse-applicative                < 0.13 ,
+        optparse-applicative                < 0.14 ,
         text                 >= 0.11.1.0 && < 1.3
 
 Benchmark bench
diff --git a/src/Morte/Core.hs b/src/Morte/Core.hs
--- a/src/Morte/Core.hs
+++ b/src/Morte/Core.hs
@@ -1,8 +1,9 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
+{-# LANGUAGE CPP                        #-}
 {-# LANGUAGE DeriveDataTypeable         #-}
 {-# LANGUAGE DeriveFoldable             #-}
 {-# LANGUAGE DeriveFunctor              #-}
 {-# LANGUAGE DeriveTraversable          #-}
+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
 {-# LANGUAGE OverloadedStrings          #-}
 {-# LANGUAGE RankNTypes                 #-}
 {-# OPTIONS_GHC -Wall #-}
@@ -69,7 +70,10 @@
     TypeMessage(..),
     ) where
 
+#if MIN_VERSION_base(4,8,0)
+#else
 import Control.Applicative (Applicative(..), (<$>))
+#endif
 import Control.DeepSeq (NFData(..))
 import Control.Exception (Exception)
 import Control.Monad (mzero)
diff --git a/src/Morte/Import.hs b/src/Morte/Import.hs
--- a/src/Morte/Import.hs
+++ b/src/Morte/Import.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP                #-}
 {-# LANGUAGE DeriveDataTypeable #-}
 {-# LANGUAGE OverloadedStrings  #-}
 {-# OPTIONS_GHC -Wall #-}
@@ -85,7 +86,10 @@
 import Data.Text.Buildable (build)
 import Data.Text.Lazy (Text)
 import Data.Text.Lazy.Builder (Builder)
+#if MIN_VERSION_base(4,8,0)
+#else
 import Data.Traversable (traverse)
+#endif
 import Data.Typeable (Typeable)
 import Filesystem.Path ((</>), FilePath)
 import Filesystem as Filesystem
@@ -248,16 +252,16 @@
             Nothing    -> case Filesystem.stripPrefix "." path of
                 Just path' -> combine url path'
                 Nothing    -> 
-                    -- This `last` is safe because the lexer constraints all
+                    -- This `last` is safe because the lexer constrains all
                     -- URLs to be non-empty.  I couldn't find a simple and safe
                     -- equivalent in the `text` API
                     case Text.last url of
                         '/' -> URL (url <>        path')
                         _   -> URL (url <> "/" <> path')
-              where
-                path' = Text.fromStrict (case Filesystem.toText path of
-                    Left  txt -> txt
-                    Right txt -> txt )
+                  where
+                    path' = Text.fromStrict (case Filesystem.toText path of
+                        Left  txt -> txt
+                        Right txt -> txt )
     go currPath (File file:paths) =
         if Filesystem.relative file
         then go          file'  paths
