diff --git a/casr-logbook.cabal b/casr-logbook.cabal
--- a/casr-logbook.cabal
+++ b/casr-logbook.cabal
@@ -1,5 +1,5 @@
 name:               casr-logbook
-version:            0.1.3
+version:            0.2.0
 license:            OtherLicense
 license-file:       LICENSE
 author:             Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ>
@@ -33,11 +33,15 @@
 
   build-depends:
                     base < 5 && >= 4.8
-                    , containers < 0.6 && >= 0.4
-                    , digit < 3 && >= 0.2.8
-                    , time < 2 && >= 1.5
-                    , lens < 5 && >= 4
-                    
+                    , casr-logbook-types >= 0.0.1 && < 0.1
+                    , casr-logbook-meta >= 0.0.4 && < 0.1
+                    , casr-logbook-html >= 0.0.2 && < 0.1
+                    , casr-logbook-meta-html >= 0.0.3 && < 0.1
+                    , casr-logbook-reports >= 0.0.2 && < 0.1
+                    , casr-logbook-reports-html >= 0.0.2 && < 0.1
+                    , casr-logbook-reports-meta >= 0.0.3 && < 0.1
+                    , casr-logbook-reports-meta-html >= 0.0.2 && < 0.1
+
   ghc-options:
                     -Wall
 
@@ -49,25 +53,7 @@
 
   exposed-modules:
                     Data.Aviation.Casr.Logbook
-                    Data.Aviation.Casr.Logbook.Rating
-                    Data.Aviation.Casr.Logbook.Aviator
-                    Data.Aviation.Casr.Logbook.Engine
-                    Data.Aviation.Casr.Logbook.Aircraft
-                    Data.Aviation.Casr.Logbook.TimeAmount
-                    Data.Aviation.Casr.Logbook.DayNight
-                    Data.Aviation.Casr.Logbook.Location
-                    Data.Aviation.Casr.Logbook.Command
-                    Data.Aviation.Casr.Logbook.Time
-                    Data.Aviation.Casr.Logbook.FlightPoint
-                    Data.Aviation.Casr.Logbook.FlightPath
-                    Data.Aviation.Casr.Logbook.AircraftFlight
-                    Data.Aviation.Casr.Logbook.SimulatorFlight
-                    Data.Aviation.Casr.Logbook.Exam
-                    Data.Aviation.Casr.Logbook.Briefing
-                    Data.Aviation.Casr.Logbook.Entry
-                    Data.Aviation.Casr.Logbook.Entries
-                    Data.Aviation.Casr.Logbook.Logbook
-
+                    
 test-suite doctests
   type:
                     exitcode-stdio-1.0
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,8 @@
+0.2.0
+
+* The contents of this package was moved to `casr-logbook-types`
+* This package becomes the conjunction of other `casr-logbook-*` packages.
+
 0.1.3
 
 * Fix `SimulatorFlight` to include flight time.
diff --git a/src/Data/Aviation/Casr/Logbook.hs b/src/Data/Aviation/Casr/Logbook.hs
--- a/src/Data/Aviation/Casr/Logbook.hs
+++ b/src/Data/Aviation/Casr/Logbook.hs
@@ -2,21 +2,11 @@
   module L
 ) where
 
-import Data.Aviation.Casr.Logbook.Logbook as L
-import Data.Aviation.Casr.Logbook.Rating as L
-import Data.Aviation.Casr.Logbook.Aviator as L
-import Data.Aviation.Casr.Logbook.Engine as L
-import Data.Aviation.Casr.Logbook.Aircraft as L
-import Data.Aviation.Casr.Logbook.TimeAmount as L
-import Data.Aviation.Casr.Logbook.DayNight as L
-import Data.Aviation.Casr.Logbook.Location as L
-import Data.Aviation.Casr.Logbook.Command as L
-import Data.Aviation.Casr.Logbook.Time as L
-import Data.Aviation.Casr.Logbook.FlightPoint as L
-import Data.Aviation.Casr.Logbook.FlightPath as L
-import Data.Aviation.Casr.Logbook.AircraftFlight as L
-import Data.Aviation.Casr.Logbook.SimulatorFlight as L
-import Data.Aviation.Casr.Logbook.Exam as L
-import Data.Aviation.Casr.Logbook.Briefing as L
-import Data.Aviation.Casr.Logbook.Entry as L
-import Data.Aviation.Casr.Logbook.Entries as L
+import Data.Aviation.Casr.Logbook.Types as L
+import Data.Aviation.Casr.Logbook.Meta as L
+import Data.Aviation.Casr.Logbook.Html.Html as L
+import Data.Aviation.Casr.Logbook.Meta.Html as L
+import Data.Aviation.Casr.Logbook.Reports as L
+import Data.Aviation.Casr.Logbook.Reports.Html as L
+import Data.Aviation.Casr.Logbook.Reports.Meta as L
+import Data.Aviation.Casr.Logbook.Reports.Meta.Html as L
diff --git a/src/Data/Aviation/Casr/Logbook/Aircraft.hs b/src/Data/Aviation/Casr/Logbook/Aircraft.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Aircraft.hs
+++ /dev/null
@@ -1,45 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.Aircraft(
-  Aircraft(..)
-, HasAircraft(..)
-, singleaircraft
-, multiaircraft
-) where
-
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.Engine(Engine(Single, Multi))
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Data.String(String)
-import Prelude(Show)
-
-data Aircraft =
-  Aircraft {
-    _aircraftType :: String
-  , _aircraftRegistration :: String
-  , _aircraftEngine :: Engine
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''Aircraft
-
-singleaircraft ::
-  String
-  -> String
-  -> Aircraft
-singleaircraft t r =
-  Aircraft
-    t
-    r
-    Single
-
-multiaircraft ::
-  String
-  -> String
-  -> Aircraft
-multiaircraft t r =
-  Aircraft
-    t
-    r
-    Multi
diff --git a/src/Data/Aviation/Casr/Logbook/AircraftFlight.hs b/src/Data/Aviation/Casr/Logbook/AircraftFlight.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/AircraftFlight.hs
+++ /dev/null
@@ -1,137 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.AircraftFlight(
-  AircraftFlight(..)
-, HasAircraftFlight(..)
-, icusonlyflight
-, noif_icusonlyflight
-, dualonlyflight
-, noif_dualonlyflight
-, commandonlyflight
-, noif_commandonlyflight
-) where
-
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.Aircraft(Aircraft)
-import Data.Aviation.Casr.Logbook.Command(Command(ICUS, Dual, InCommand))
-import Data.Aviation.Casr.Logbook.DayNight(DayNight)
-import Data.Aviation.Casr.Logbook.FlightPath(FlightPath)
-import Data.Aviation.Casr.Logbook.Aviator(Aviator)
-import Data.Aviation.Casr.Logbook.TimeAmount(TimeAmount, zerotimeamount)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Data.String(String)
-import Prelude(Show)
-
-data AircraftFlight =
-  AircraftFlight {
-    _aircraftflightname :: String
-  , _flightaircraft :: Aircraft
-  , _command :: Command
-  , _daynight :: DayNight
-  , _flightpath :: FlightPath
-  , _flightothercrew :: [Aviator]
-  , _instrumentflightTime :: TimeAmount
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''AircraftFlight
-
-icusonlyflight ::
-  String
-  -> Aircraft
-  -> Aviator
-  -> DayNight
-  -> FlightPath
-  -> TimeAmount
-  -> AircraftFlight
-icusonlyflight n a v t p i =
-  AircraftFlight
-    n
-    a
-    (ICUS v)
-    t
-    p
-    []
-    i
-
-noif_icusonlyflight ::
-  String
-  -> Aircraft
-  -> Aviator
-  -> DayNight
-  -> FlightPath
-  -> AircraftFlight
-noif_icusonlyflight n a v t p =
-  icusonlyflight
-    n
-    a
-    v
-    t
-    p
-    zerotimeamount
-
-dualonlyflight ::
-  String
-  -> Aircraft
-  -> Aviator
-  -> DayNight
-  -> FlightPath
-  -> TimeAmount
-  -> AircraftFlight
-dualonlyflight n a v t p i =
-  AircraftFlight
-    n
-    a
-    (Dual v)
-    t
-    p
-    []
-    i
-
-noif_dualonlyflight ::
-  String
-  -> Aircraft
-  -> Aviator
-  -> DayNight
-  -> FlightPath
-  -> AircraftFlight
-noif_dualonlyflight n a v t p =
-  dualonlyflight
-    n
-    a
-    v
-    t
-    p
-    zerotimeamount
-
-commandonlyflight ::
-  String
-  -> Aircraft
-  -> DayNight
-  -> FlightPath
-  -> TimeAmount
-  -> AircraftFlight
-commandonlyflight n a t p i =
-  AircraftFlight
-    n
-    a
-    InCommand
-    t
-    p
-    []
-    i
-
-noif_commandonlyflight ::
-  String
-  -> Aircraft
-  -> DayNight
-  -> FlightPath
-  -> AircraftFlight
-noif_commandonlyflight n a t p =
-  commandonlyflight
-    n
-    a
-    t
-    p
-    zerotimeamount
diff --git a/src/Data/Aviation/Casr/Logbook/Aviator.hs b/src/Data/Aviation/Casr/Logbook/Aviator.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Aviator.hs
+++ /dev/null
@@ -1,70 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.Aviator(
-  Aviator(..)
-, HasAviator(..)
-, aviatorwithname
-, nodobaviator
-, dobaviator
-) where
-
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.Rating(Rating)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Data.Digit(Digit)
-import Data.Maybe(Maybe(Nothing, Just))
-import Data.String(String)
-import Data.Time(Day)
-import Prelude(Show)
-
-data Aviator =
-  Aviator {
-    _surname :: String
-  , _firstname :: String
-  , _arn :: [Digit]
-  , _dob :: Maybe Day
-  , _ratings :: [Rating]
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''Aviator
-
-aviatorwithname ::
-  String
-  -> String
-  -> Aviator
-aviatorwithname s f =
-  Aviator
-    s
-    f
-    []
-    Nothing
-    []
-
-nodobaviator ::
-  String
-  -> String
-  -> [Digit]
-  -> [Rating]
-  -> Aviator
-nodobaviator s f r =
-  Aviator
-    s 
-    f
-    r
-    Nothing
-
-dobaviator ::
-  String
-  -> String
-  -> [Digit]
-  -> Day
-  -> [Rating]
-  -> Aviator
-dobaviator s f r b =
-  Aviator
-    s 
-    f
-    r
-    (Just b)
diff --git a/src/Data/Aviation/Casr/Logbook/Briefing.hs b/src/Data/Aviation/Casr/Logbook/Briefing.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Briefing.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.Briefing(
-  Briefing(..)
-, HasBriefing(..)
-) where
-  
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.Aviator(Aviator)
-import Data.Aviation.Casr.Logbook.Location(Location)
-import Data.Aviation.Casr.Logbook.Time(Time)
-import Data.Aviation.Casr.Logbook.TimeAmount(TimeAmount)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Data.String(String)
-import Prelude(Show)
-
-data Briefing =
-  Briefing {
-    _briefingName :: String
-  , _briefingLocation :: Location
-  , _briefingTime :: Time
-  , _briefer :: Aviator
-  , _briefingTimeAmount :: TimeAmount
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''Briefing
diff --git a/src/Data/Aviation/Casr/Logbook/Command.hs b/src/Data/Aviation/Casr/Logbook/Command.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Command.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.Command(
-  Command(..)
-, AsCommand(..)
-, getInstructingPic
-) where
-
-import Control.Lens(makeClassyPrisms)
-import Data.Aviation.Casr.Logbook.Aviator(Aviator)
-import Data.Eq(Eq)
-import Data.Maybe(Maybe(Just, Nothing))
-import Data.Ord(Ord)
-import Prelude(Show)
-
-data Command =
-  ICUS Aviator
-  | Dual Aviator
-  | InCommand
-  deriving (Eq, Ord, Show)
-
-makeClassyPrisms ''Command
-
-getInstructingPic ::
-  Command
-  -> Maybe Aviator
-getInstructingPic (ICUS a) =
-  Just a
-getInstructingPic (Dual a) =
-  Just a
-getInstructingPic InCommand =
-  Nothing
diff --git a/src/Data/Aviation/Casr/Logbook/DayNight.hs b/src/Data/Aviation/Casr/Logbook/DayNight.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/DayNight.hs
+++ /dev/null
@@ -1,47 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.DayNight(
-  DayNight(..)
-, HasDayNight(..)
-, day
-, night
-, totalDayNight
-) where
-
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.TimeAmount(TimeAmount(TimeAmount), zerotimeamount)
-import Data.Digit(Digit)
-import Data.Eq(Eq)
-import Data.Int(Int)
-import Data.Monoid(mappend)
-import Data.Ord(Ord)
-import Prelude(Show)
-
-data DayNight =
-  DayNight {
-    _dayDayNight :: TimeAmount
-  , _nightDayNight :: TimeAmount
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''DayNight
-
-day ::
-  Int
-  -> Digit
-  -> DayNight
-day h p =
-  DayNight (TimeAmount h p) zerotimeamount
-
-night ::
-  Int
-  -> Digit
-  -> DayNight
-night h p =
-  DayNight zerotimeamount (TimeAmount h p)
-
-totalDayNight ::
-  DayNight
-  -> TimeAmount
-totalDayNight (DayNight d n) =
-  d `mappend` n
diff --git a/src/Data/Aviation/Casr/Logbook/Engine.hs b/src/Data/Aviation/Casr/Logbook/Engine.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Engine.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.Engine(
-  Engine(..)
-, AsEngine(..)
-) where
-
-import Control.Lens(makeClassyPrisms)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Prelude(Show)
-
-data Engine =
-  Single
-  | Multi
-  deriving (Eq, Ord, Show)
-
-makeClassyPrisms ''Engine
diff --git a/src/Data/Aviation/Casr/Logbook/Entries.hs b/src/Data/Aviation/Casr/Logbook/Entries.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Entries.hs
+++ /dev/null
@@ -1,35 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE TypeFamilies #-}
-
-module Data.Aviation.Casr.Logbook.Entries(
-  Entries(..)
-, emptyentries
-, singleentry
-) where
-
-import Control.Lens(makeWrapped)
-import Data.Aviation.Casr.Logbook.Entry(Entry)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Prelude(Show)
-  
-newtype Entries ae se ee be =
-  Entries
-    [Entry ae se ee be]
-  deriving (Eq, Ord, Show)
-
-makeWrapped ''Entries
-
-emptyentries ::
-  Entries ae se ee be
-emptyentries =
-  Entries []
-
-singleentry ::
-  Entry ae se ee be
-  -> Entries ae se ee be
-singleentry e =
-  Entries [e]
diff --git a/src/Data/Aviation/Casr/Logbook/Entry.hs b/src/Data/Aviation/Casr/Logbook/Entry.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Entry.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE FlexibleInstances #-}
-
-module Data.Aviation.Casr.Logbook.Entry(
-  Entry(..)
-, AsEntry(..)
-) where
-
-import Control.Lens(makeClassyPrisms)
-import Data.Aviation.Casr.Logbook.AircraftFlight(AircraftFlight)
-import Data.Aviation.Casr.Logbook.SimulatorFlight(SimulatorFlight)
-import Data.Aviation.Casr.Logbook.Exam(Exam)
-import Data.Aviation.Casr.Logbook.Briefing(Briefing)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Prelude(Show)
-
-data Entry ae se ee be =
-  AircraftFlightEntry AircraftFlight ae
-  | SimulatorFlightEntry SimulatorFlight se
-  | ExamEntry Exam ee
-  | BriefingEntry Briefing be
-  deriving (Eq, Ord, Show)
-
-makeClassyPrisms ''Entry
diff --git a/src/Data/Aviation/Casr/Logbook/Exam.hs b/src/Data/Aviation/Casr/Logbook/Exam.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Exam.hs
+++ /dev/null
@@ -1,45 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.Exam(
-  Exam(..)
-, HasExam(..)
-, dayonlyexam
-) where
-
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.Aviator(Aviator)
-import Data.Aviation.Casr.Logbook.Time(Time, dayonly)
-import Data.Aviation.Casr.Logbook.Location(Location)
-import Data.Eq(Eq)
-import Data.Int(Int)
-import Data.Ord(Ord)
-import Data.String(String)
-import Data.Time(Day)
-import Prelude(Show)
-
-data Exam =
-  Exam {
-    _examName :: String
-  , _examLocation :: Location
-  , _examTime :: Time
-  , _examDelegate :: Aviator
-  , _examResult :: Int
-  , _examResultMaximum :: Int
-  } deriving (Eq, Ord, Show)  
-
-makeClassy ''Exam
-
-dayonlyexam ::
-  String
-  -> Location
-  -> Day
-  -> Aviator
-  -> Int
-  -> Int
-  -> Exam
-dayonlyexam n l d =
-  Exam
-    n
-    l
-    (dayonly d)
diff --git a/src/Data/Aviation/Casr/Logbook/FlightPath.hs b/src/Data/Aviation/Casr/Logbook/FlightPath.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/FlightPath.hs
+++ /dev/null
@@ -1,61 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.FlightPath(
-  FlightPath(..)
-, HasFlightPath(..)
-, directflightpath
-, directcircuit
-, pointsatdate
-, flightPathList
-) where
-
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.FlightPoint(FlightPoint, pointatdate)
-import Data.Eq(Eq)
-import Data.Functor((<$>))
-import Data.List((++))
-import Data.Ord(Ord)
-import Data.String(String)
-import Data.Time(Day)
-import Prelude(Show)
-
-data FlightPath =
-  FlightPath {
-    _flightStart :: FlightPoint
-  , _flightIntermediate :: [FlightPoint]
-  , _flightEnd :: FlightPoint
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''FlightPath
-
-directflightpath ::
-  FlightPoint
-  -> FlightPoint
-  -> FlightPath
-directflightpath x y =
-  FlightPath x [] y
-
-directcircuit ::
-  FlightPoint
-  -> FlightPath
-directcircuit x =
-  directflightpath x x
-
-pointsatdate ::
-  String
-  -> [String]
-  -> String
-  -> Day
-  -> FlightPath
-pointsatdate x i y d =
-  FlightPath
-    (pointatdate x d)
-    ((\s -> pointatdate s d) <$> i)
-    (pointatdate y d)
-
-flightPathList ::
-  FlightPath
-  -> [FlightPoint]
-flightPathList (FlightPath s x e) =
-  s : x ++ [e]
diff --git a/src/Data/Aviation/Casr/Logbook/FlightPoint.hs b/src/Data/Aviation/Casr/Logbook/FlightPoint.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/FlightPoint.hs
+++ /dev/null
@@ -1,48 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.FlightPoint(
-  FlightPoint(..)
-, HasFlightPoint(..)
-, pointatdate
-, runwayatdate
-) where
-
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.Time(Time, dayonly)
-import Data.Eq(Eq)
-import Data.Maybe(Maybe(Nothing, Just))
-import Data.Ord(Ord)
-import Data.String(String)
-import Data.Time(Day)
-import Prelude(Show)
-
-data FlightPoint =
-  FlightPoint {
-    _point :: String
-  , _runway :: Maybe String
-  , _landingTime :: Time
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''FlightPoint
-
-pointatdate ::
-  String
-  -> Day
-  -> FlightPoint
-pointatdate a d =
-  FlightPoint
-    a
-    Nothing
-    (dayonly d)
-
-runwayatdate ::
-  String
-  -> String
-  -> Day
-  -> FlightPoint
-runwayatdate a r d =
-  FlightPoint
-    a
-    (Just r)
-    (dayonly d)
diff --git a/src/Data/Aviation/Casr/Logbook/Location.hs b/src/Data/Aviation/Casr/Logbook/Location.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Location.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.Location(
-  Location(..)
-, HasLocation(..)
-) where
-
-import Control.Lens(makeClassy)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Data.String(String)
-import Prelude(Show, Double)
-
-data Location =
-  Location {
-    _locationname :: String
-  , _locationlatitude :: Double
-  , _locationlongitude :: Double
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''Location
diff --git a/src/Data/Aviation/Casr/Logbook/Logbook.hs b/src/Data/Aviation/Casr/Logbook/Logbook.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Logbook.hs
+++ /dev/null
@@ -1,54 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE FlexibleInstances #-}
-
-module Data.Aviation.Casr.Logbook.Logbook(
-  Logbook(..)
-, HasLogbook(..)
-, aviatorlogbook
-, emptylogbook
-, singleentrylogbook
-) where
-
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.Aviator(Aviator)
-import Data.Aviation.Casr.Logbook.Entries(Entries(Entries), emptyentries, singleentry)
-import Data.Aviation.Casr.Logbook.Entry(Entry)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Prelude(Show)
-
-data Logbook ae se ee be =
-  Logbook {
-    _logbookaviator :: Aviator
-  , _logbookentries :: (Entries ae se ee be)
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''Logbook
-
-aviatorlogbook ::
-  Aviator
-  -> [Entry ae se ee be]
-  -> Logbook ae se ee be
-aviatorlogbook a e =
-  Logbook
-    a
-    (Entries e)
-
-emptylogbook ::
-  Aviator
-  -> Logbook ae se ee be
-emptylogbook a =
-  Logbook
-    a
-    emptyentries
-
-singleentrylogbook ::
-  Aviator
-  -> Entry ae se ee be
-  -> Logbook ae se ee be
-singleentrylogbook a e =
-  Logbook
-    a
-    (singleentry e)
diff --git a/src/Data/Aviation/Casr/Logbook/Rating.hs b/src/Data/Aviation/Casr/Logbook/Rating.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Rating.hs
+++ /dev/null
@@ -1,42 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.Rating(
-  Rating(..)
-, HasRating(..)
-, nodayrating
-, dayrating
-) where
-
-import Control.Lens(makeClassy)
-import Data.Eq(Eq)
-import Data.Maybe(Maybe(Nothing, Just))
-import Data.Ord(Ord)
-import Data.String(String)
-import Data.Time(Day)
-import Prelude(Show)
-
-data Rating =
-  Rating {
-    _ratingName :: String
-  , _ratingAchieved :: Maybe Day
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''Rating
-
-nodayrating ::
-  String
-  -> Rating
-nodayrating r =
-  Rating
-    r
-    Nothing
-
-dayrating ::
-  String
-  -> Day
-  -> Rating
-dayrating r d =
-  Rating
-    r
-    (Just d)
diff --git a/src/Data/Aviation/Casr/Logbook/SimulatorFlight.hs b/src/Data/Aviation/Casr/Logbook/SimulatorFlight.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/SimulatorFlight.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.SimulatorFlight(
-  SimulatorFlight(..)
-, HasSimulatorFlight(..)
-, dayonlysimulator
-) where
-
-import Control.Lens(makeClassy)
-import Data.Aviation.Casr.Logbook.Time(Time, dayonly)
-import Data.Aviation.Casr.Logbook.Aviator(Aviator)
-import Data.Aviation.Casr.Logbook.TimeAmount(TimeAmount)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Data.String(String)
-import Data.Time(Day)
-import Prelude(Show)
-
-data SimulatorFlight =
-  SimulatorFlight {
-    _simulatorflightname :: String
-  , _simulatorflighttime :: Time
-  , _simulatortype :: String
-  , _simulatorothercrew :: [Aviator]
-  , _simulatorTime :: TimeAmount
-  , _instrumentsimulatorTime :: TimeAmount
-  } deriving (Eq, Ord, Show)   
-
-makeClassy ''SimulatorFlight
-
-dayonlysimulator ::
-  String
-  -> Day
-  -> String
-  -> [Aviator]
-  -> TimeAmount
-  -> TimeAmount
-  -> SimulatorFlight
-dayonlysimulator n d =
-  SimulatorFlight
-    n
-    (dayonly d)
-    
diff --git a/src/Data/Aviation/Casr/Logbook/Time.hs b/src/Data/Aviation/Casr/Logbook/Time.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/Time.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.Time(
-  Time(..)
-, HasTime(..)
-, dayonly
-, dayandtime
-) where
-
-import Control.Lens(makeClassy)
-import Data.Eq(Eq)
-import Data.Ord(Ord)
-import Data.Maybe(Maybe(Nothing, Just))
-import Data.Time(Day, TimeOfDay)
-import Prelude(Show)
-
-data Time =
-  Time {
-    _daytime :: Day
-  , _timeofday :: Maybe TimeOfDay
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''Time
-
-dayonly ::
-  Day
-  -> Time
-dayonly d =
-  Time d Nothing
-
-dayandtime ::
-  Day
-  -> TimeOfDay
-  -> Time
-dayandtime d t =
-  Time d (Just t)
diff --git a/src/Data/Aviation/Casr/Logbook/TimeAmount.hs b/src/Data/Aviation/Casr/Logbook/TimeAmount.hs
deleted file mode 100644
--- a/src/Data/Aviation/Casr/Logbook/TimeAmount.hs
+++ /dev/null
@@ -1,58 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module Data.Aviation.Casr.Logbook.TimeAmount(
-  TimeAmount(..)
-, HasTimeAmount(..)
-, parttimeamount
-, zerotimeamount
-, addtimeamount
-, timeAmountBy10
-) where
-
-import Control.Lens(makeClassy, ( # ))
-import Data.Eq(Eq)
-import Data.Digit(Digit, x0, digit, (/+/))
-import Data.Int(Int)
-import Data.Monoid(Monoid(mempty, mappend))
-import Data.Ord(Ord)
-import Prelude(Show, Num((+), (*)))
-
-data TimeAmount =
-  TimeAmount {
-    _hours :: Int
-  , _tenthofhour :: Digit
-  } deriving (Eq, Ord, Show)
-
-makeClassy ''TimeAmount
-
-parttimeamount ::
-  Digit
-  -> TimeAmount
-parttimeamount =
-  TimeAmount 0
-
-zerotimeamount ::
-  TimeAmount
-zerotimeamount =
-  TimeAmount 0 x0
-
-addtimeamount ::
-  TimeAmount 
-  -> TimeAmount
-  -> TimeAmount
-TimeAmount f1 p1 `addtimeamount` TimeAmount f2 p2 =
-  let (h, q) = p1 /+/ p2
-  in  TimeAmount (f1 + f2 + digit # h) q 
-
-timeAmountBy10 ::
-  TimeAmount
-  -> Int
-timeAmountBy10 (TimeAmount a b) =
-  a * 10 + digit # b
-
-instance Monoid TimeAmount where
-  mempty =
-    zerotimeamount
-  mappend =
-    addtimeamount
