diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,11 +1,18 @@
 
-# Changelog for ELynx
+# Revision history for ELynx
 
 
 ## Unreleased changes
 
+-   Improve rooting functions.
+-   Improve `Topology` data type (but still a lot to do).
+-   Various additions to the documentation.
+-   Rename `Measurable` to `HasLength`, `Supported` to `HasSupport`, and `Named`
+    to `HasLength`.
+-   Cabal and stack file changes.
 
-## Version 0.5.0
+
+## Version 0.5.0.1
 
 -   `modLen`, `modSup`.
 -   Newtype wrappers for branch length, branch support, and node name. Those data
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
 
 # The ELynx Suite
 
-Version: 0.5.0.
+Version: 0.5.0.1.
 Reproducible evolution made easy.
 
 <p align="center"><img src="https://travis-ci.org/dschrempf/elynx.svg?branch=master"/></p>
@@ -19,18 +19,20 @@
 
 The library packages are:
 
--   **elynx-nexus:** Nexus file support.
--   **elynx-markov:** Simulate multi sequence alignments along phylogenetic trees.
--   **elynx-seq:** Handle evolutionary sequences and multi sequence alignments.
--   **elynx-tools:** Tools for the provided executables.
--   **elynx-tree:** Handle phylogenetic trees.
+-   **[elynx-nexus](https://hackage.haskell.org/package/elynx-nexus):** Nexus file support.
+-   **[elynx-markov](https://hackage.haskell.org/package/elynx-markov):** Simulate multi sequence alignments along phylogenetic trees.
+-   **[elynx-seq](https://hackage.haskell.org/package/elynx-seq):** Handle evolutionary sequences and multi sequence alignments.
+-   **[elynx-tools](https://hackage.haskell.org/package/elynx-tools):** Tools for the provided executables.
+-   **[elynx-tree](https://hackage.haskell.org/package/elynx-tree):** Handle phylogenetic trees.
 
 The executables are:
 
--   **slynx:** Analyze, modify, and simulate evolutionary sequences.
--   **tlynx:** Analyze, modify, and simulate phylogenetic trees.
--   **elynx:** Validate and redo past analyses.
+-   **[slynx](https://hackage.haskell.org/package/slynx):** Analyze, modify, and simulate evolutionary sequences.
+-   **[tlynx](https://hackage.haskell.org/package/tlynx):** Analyze, modify, and simulate phylogenetic trees.
+-   **[elynx](https://hackage.haskell.org/package/elynx):** Validate and redo past analyses.
 
+Documentation is available on [Hackage](https://hackage.haskell.org/) (use direct links above).
+
 **ELynx is actively developed. We happily receive comments, ideas, feature
 requests, and pull requests!**
 
@@ -65,34 +67,15 @@
     [PATH](https://en.wikipedia.org/wiki/PATH_(variable)) environment variable. Then, they can be used directly.
 
 
-# Documentation
-
-Documentation is available on [Hackage](https://hackage.haskell.org/).
-
-Libraries:
-
--   [elynx-nexus](https://hackage.haskell.org/package/elynx-nexus)
--   [elynx-markov](https://hackage.haskell.org/package/elynx-markov)
--   [elynx-seq](https://hackage.haskell.org/package/elynx-seq)
--   [elynx-tools](https://hackage.haskell.org/package/elynx-tools)
--   [elynx-tree](https://hackage.haskell.org/package/elynx-tree)
-
-Executables:
-
--   [elynx](https://hackage.haskell.org/package/elynx)
--   [slynx](https://hackage.haskell.org/package/slynx)
--   [tlynx](https://hackage.haskell.org/package/tlynx)
-
-
 # SLynx
 
 Handle evolutionary sequences.
 
     slynx --help | head -n -16
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: slynx [-v|--verbosity VALUE] [-o|--output-file-basename NAME] 
                  [-f|--force] [--no-elynx-file] COMMAND
@@ -137,9 +120,9 @@
 
     slynx concatenate --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: slynx concatenate (-a|--alphabet NAME) INPUT-FILE
       Concatenate sequences found in input files.
@@ -158,9 +141,9 @@
 
     slynx examine --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: slynx examine (-a|--alphabet NAME) INPUT-FILE [--per-site]
       Examine sequences. If data is a multi sequence alignment, additionally analyze columns.
@@ -180,9 +163,9 @@
 
     slynx filter-rows --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: slynx filter-rows (-a|--alphabet NAME) INPUT-FILE [--longer-than LENGTH] 
                              [--shorter-than LENGTH] [--standard-characters]
@@ -203,9 +186,9 @@
 
     slynx filter-columns --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: slynx filter-columns (-a|--alphabet NAME) INPUT-FILE 
                                 [--standard-chars DOUBLE]
@@ -227,9 +210,9 @@
 
     slynx simulate --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: slynx simulate (-t|--tree-file Name) [-s|--substitution-model MODEL] 
                           [-m|--mixture-model MODEL] [-e|--edm-file NAME] 
@@ -306,9 +289,9 @@
 
     slynx sub-sample --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: slynx sub-sample (-a|--alphabet NAME) INPUT-FILE
                             (-n|--number-of-sites INT)
@@ -336,9 +319,9 @@
 
     slynx translate --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: slynx translate (-a|--alphabet NAME) INPUT-FILE (-r|--reading-frame INT)
                            (-u|--universal-code CODE)
@@ -361,9 +344,9 @@
 
     tlynx --help | head -n -16
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: tlynx [-v|--verbosity VALUE] [-o|--output-file-basename NAME] 
                  [-f|--force] [--no-elynx-file] COMMAND
@@ -401,9 +384,9 @@
 
     tlynx compare --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: tlynx compare [-n|--normalize] [-b|--bipartitions] [-t|--intersect] 
                          [-f|--newick-format FORMAT] NAMES
@@ -430,9 +413,9 @@
 
     tlynx examine --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: tlynx examine INPUT-FILE [-f|--newick-format FORMAT]
       Compute summary statistics of phylogenetic trees.
@@ -454,9 +437,9 @@
 
     tlynx simulate --help
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: tlynx simulate (-t|--nTrees INT) (-n|--nLeaves INT) PROCESS 
                           [-u|--sub-sample DOUBLE] [-s|--summary-statistics] 
@@ -491,9 +474,9 @@
 
     elynx --help | head -n -16
 
-    ELynx Suite version 0.5.0.
+    ELynx Suite version 0.5.0.1.
     Developed by Dominik Schrempf.
-    Compiled on November 10, 2020, at 14:29 pm, UTC.
+    Compiled on December 18, 2020, at 10:14 am, UTC.
     
     Usage: elynx COMMAND
       Validate and redo past ELynx analyses
diff --git a/elynx-nexus.cabal b/elynx-nexus.cabal
--- a/elynx-nexus.cabal
+++ b/elynx-nexus.cabal
@@ -1,52 +1,49 @@
-cabal-version:  2.2
-name:           elynx-nexus
-version:        0.5.0
-synopsis:       Import and export Nexus files
-description:    Examine, modify, and simulate molecular sequences in a reproducible way. Please see the README on GitHub at <https://github.com/dschrempf/elynx>.
-category:       Bioinformatics
-homepage:       https://github.com/dschrempf/elynx#readme
-bug-reports:    https://github.com/dschrempf/elynx/issues
-author:         Dominik Schrempf
-maintainer:     dominik.schrempf@gmail.com
-copyright:      Dominik Schrempf (2020)
-license:        GPL-3.0-or-later
-license-file:   LICENSE
-build-type:     Simple
+cabal-version:      2.2
+name:               elynx-nexus
+version:            0.5.0.1
+license:            GPL-3.0-or-later
+license-file:       LICENSE
+copyright:          Dominik Schrempf (2020)
+maintainer:         dominik.schrempf@gmail.com
+author:             Dominik Schrempf
+homepage:           https://github.com/dschrempf/elynx#readme
+bug-reports:        https://github.com/dschrempf/elynx/issues
+synopsis:           Import and export Nexus files
+description:
+    Examine, modify, and simulate molecular sequences in a reproducible way. Please see the README on GitHub at <https://github.com/dschrempf/elynx>.
 
+category:           Bioinformatics
+build-type:         Simple
 extra-source-files:
     README.md
     ChangeLog.md
 
 source-repository head
-  type: git
-  location: https://github.com/dschrempf/elynx
+    type:     git
+    location: https://github.com/dschrempf/elynx
 
 library
-  exposed-modules:
-      ELynx.Export.Nexus
-      ELynx.Import.Nexus
-  other-modules:
-      Paths_elynx_nexus
-  autogen-modules:
-      Paths_elynx_nexus
-  hs-source-dirs:
-      src
-  ghc-options: -Wall
-  build-depends:
-      attoparsec
-    , base >=4.7 && <5
-    , bytestring
-  default-language: Haskell2010
+    exposed-modules:
+        ELynx.Export.Nexus
+        ELynx.Import.Nexus
 
+    hs-source-dirs:   src
+    other-modules:    Paths_elynx_nexus
+    autogen-modules:  Paths_elynx_nexus
+    default-language: Haskell2010
+    ghc-options:      -Wall -Wunused-packages
+    build-depends:
+        attoparsec >=0.13.2.4 && <0.14,
+        base >=4.7 && <5,
+        bytestring >=0.10.10.0 && <0.11
+
 test-suite seq-test
-  type: exitcode-stdio-1.0
-  main-is: Spec.hs
-  other-modules:
-      Paths_elynx_nexus
-  hs-source-dirs:
-      test
-  ghc-options: -Wall
-  build-depends:
-      base >=4.7 && <5
-    , hspec
-  default-language: Haskell2010
+    type:             exitcode-stdio-1.0
+    main-is:          Spec.hs
+    hs-source-dirs:   test
+    other-modules:    Paths_elynx_nexus
+    default-language: Haskell2010
+    ghc-options:      -Wall -Wunused-packages
+    build-depends:
+        base >=4.7 && <5,
+        hspec >=2.7.4 && <2.8
