diff --git a/fpco-api.cabal b/fpco-api.cabal
--- a/fpco-api.cabal
+++ b/fpco-api.cabal
@@ -1,7 +1,7 @@
 name:                 fpco-api
-version:              1.0.0
+version:              1.0.1
 synopsis:             API interface for the FP Complete API.
-description:          Data types and serialization for communicating with the FP Complete IDE API.
+description:          A server, data types and serialization for communicating with the FP Complete IDE API.
 homepage:             https://www.fpcomplete.com/page/api
 license:              BSD3
 license-file:         LICENSE
@@ -16,7 +16,7 @@
   default: False
 
 library
-  ghc-options:       -Wall -O2 -threaded
+  ghc-options:       -Wall -O2
   hs-source-dirs:     src/library
   exposed-modules:    FP.API, FP.API.Run, FP.API.Types, FP.Server, FP.Server.Types, FP.Server.Config,
                       FP.Server.Spans, FP.API.Convert
@@ -24,24 +24,24 @@
   default-language:   Haskell2010
   build-depends:      base >=4 && < 5,
                       aeson ==0.6.*,
-                      bytestring ==0.9.*,
+                      bytestring >= 0.9,
                       ConfigFile ==1.1.*,
                       data-default ==0.5.*,
                       text ==0.11.*,
                       network ==2.4.*,
                       optparse-applicative ==0.5.*,
                       safe ==0.3.*,
-                      directory ==1.1.*,
+                      directory >=1.1,
                       filepath ==1.3.*,
                       fay ==0.18.*,
                       lifted-base ==0.2.*,
                       monad-extras ==0.5.*,
                       monad-logger ==0.3.*,
                       mtl ==2.1.*,
-                      containers ==0.4.*,
+                      containers >= 0.4,
                       http-conduit ==1.9.*,
                       texts ==0.3.*,
-                      ghc-prim ==0.2.*,
+                      ghc-prim,
                       template-haskell ==2.7.*,
                       attoparsec ==0.10.*,
                       syb ==0.4.*,
@@ -67,12 +67,12 @@
   build-depends:      base >=4 && < 5,
                       fpco-api,
                       optparse-applicative == 0.5.*,
-                      bytestring == 0.9.*,
+                      bytestring >= 0.9,
                       network ==2.4.*,
                       safe ==0.3.*,
                       aeson ==0.6.*,
                       text ==0.11.*,
-                      directory ==1.1.*,
+                      directory >=1.1,
                       filepath ==1.3.*,
                       ConfigFile ==1.1.*,
                       data-default ==0.5.*,
diff --git a/src/library/FP/API/Types.hs b/src/library/FP/API/Types.hs
--- a/src/library/FP/API/Types.hs
+++ b/src/library/FP/API/Types.hs
@@ -198,7 +198,7 @@
     deriving (Read, Typeable, Data, Show, Eq)
 
 -- TODO: middle text should be the code that the type comes from.
-data TypeInfo = TypeInfo SourceSpan Text Text
+data TypeInfo = TypeInfo SourceSpan Text [Text]
     deriving (Read, Typeable, Data, Show, Eq)
 
 data MaybeText = NoText | JustText Text -- FAY BUG
@@ -613,7 +613,7 @@
     | ProcessOutputError Text
     | StatusSnapshot ProjectStatusSnapshot StatusHash
     | IdInfoResults IdInfo
-    | SubExprsResults SourceSpan [[TypeInfo]]
+    | SubExprsResults SourceSpan [TypeInfo]
     | AutoCompleteResults (Maybe AutoCompleteInput) [Text]
     | ImportedPackagesResults [PackageId]
     | SearchResults [SearchResult]
diff --git a/src/library/FP/Server.hs b/src/library/FP/Server.hs
--- a/src/library/FP/Server.hs
+++ b/src/library/FP/Server.hs
@@ -278,7 +278,7 @@
           (\_ msg -> do
              case msg of
                SubExprsResults span' infos
-                 | span' == span -> do reply h (ReplyTypeInfo (map toSpanType (concat infos)))
+                 | span' == span -> do reply h (ReplyTypeInfo (map toSpanType infos))
                                        return Done
                _ -> return NotDone))
 
diff --git a/src/library/FP/Server/Spans.hs b/src/library/FP/Server/Spans.hs
--- a/src/library/FP/Server/Spans.hs
+++ b/src/library/FP/Server/Spans.hs
@@ -27,8 +27,8 @@
   T.pack (show fromCol)
 
 toSpanType :: TypeInfo -> SpanType
-toSpanType (TypeInfo (SourceSpan _ sl sc el ec) srcstr typ) =
-  SpanType sl sc el ec srcstr typ
+toSpanType (TypeInfo (SourceSpan _ sl sc el ec) srcstr typs) =
+  SpanType sl sc el ec srcstr typs
 
 makeEitherLoc :: FilePath -> EitherSpan -> Maybe Loc
 makeEitherLoc _ TextSpan{} = Nothing
diff --git a/src/library/FP/Server/Types.hs b/src/library/FP/Server/Types.hs
--- a/src/library/FP/Server/Types.hs
+++ b/src/library/FP/Server/Types.hs
@@ -120,7 +120,7 @@
 -- | A type info thing.
 data SpanType = SpanType Int Int Int Int -- Position
                          Text            -- Source string
-                         Text            -- Type
+                         [Text]          -- Types
   deriving (Generic,Show)
 
 instance ToJSON SpanType
