diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,4 +1,5 @@
 # haskell-lsp-client
+[![Hackage](https://img.shields.io/hackage/v/haskell-lsp-client.svg)](https://hackage.haskell.org/package/haskell-lsp-client)
 
 This package is intended for developers of text editors who want to make their text editor
 compatible with the [Language Server Protocol](https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md).
@@ -8,8 +9,7 @@
 ## The example client
 
 Contained in this repository is an example client. This example client just runs the [Haskell IDE Engine](https://github.com/alanz/haskell-ide-engine/)
-and opens the file specified on the command line. Then it waits a second to let HIE check the
-file for errors and such.
+and opens the file specified on the command line. Then it asks the language server for all symbols in the document and prints the result it gets.
 
 To run the example:
 
@@ -21,4 +21,4 @@
 
 On my system it shows something about a capability registration request and that a certain hoogle
 database is used. You can replace example/Main.hs with any haskell file you would like to check.
-It reports ghc errors and hlint suggestions.
+It reports ghc errors and hlint suggestions and it shows the symbol list.
diff --git a/example/Main.hs b/example/Main.hs
--- a/example/Main.hs
+++ b/example/Main.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE LambdaCase #-}
 module Main where
 
 import qualified Language.Haskell.LSP.TH.DataTypesJSON as LSP
@@ -83,9 +84,14 @@
 
   txt <- T.readFile file
 
-  Client.sendClientNotification reqVar LSP.TextDocumentDidOpen (Just (LSP.DidOpenTextDocumentParams (LSP.TextDocumentItem (LSP.filePathToUri file) "haskell" 1 txt)))
+  let uri = LSP.filePathToUri file
 
-  threadDelay 1000000
+  Client.sendClientNotification reqVar LSP.TextDocumentDidOpen (Just (LSP.DidOpenTextDocumentParams (LSP.TextDocumentItem uri "haskell" 1 txt)))
+
+  Client.sendClientRequest (Proxy :: Proxy LSP.DocumentSymbolRequest) reqVar LSP.TextDocumentDocumentSymbol (LSP.DocumentSymbolParams (LSP.TextDocumentIdentifier uri))
+    >>= \case
+      Just (Right as) -> mapM_ T.putStrLn (as ^.. traverse . LSP.name)
+      _ -> putStrLn "Server couldn't give us document symbol information"
 
   Client.sendClientRequest (Proxy :: Proxy LSP.ShutdownRequest) reqVar LSP.Shutdown Nothing
 --    >>= print
diff --git a/haskell-lsp-client.cabal b/haskell-lsp-client.cabal
--- a/haskell-lsp-client.cabal
+++ b/haskell-lsp-client.cabal
@@ -1,5 +1,5 @@
 name:           haskell-lsp-client
-version:        1.0.0.0
+version:        1.0.0.1
 synopsis:       A haskell package to build your own Language Server client.
 category:       Language, Protocol, Development
 homepage:       https://github.com/noughtmare/haskell-lsp-client#readme
@@ -8,7 +8,7 @@
 description:
   This package is intended for developers of text editors who want to make their text editor
   compatible with the <https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md Language Server Protocol>.
-  
+
   I have developed this package with plans to integrate it in the <https://github.com/yi-editor/yi Yi Editor>.
 copyright:      2017 Jaro Reinders
 license:        GPL-2
@@ -24,7 +24,7 @@
       src
   build-depends:
       base >= 4.7 && < 5
-    , haskell-lsp >= 0.2
+    , haskell-lsp >= 0.2.0.1
     , text
     , aeson
     , lens
@@ -34,7 +34,8 @@
   exposed-modules:
       LSP.Client
   default-language: Haskell2010
-  ghc-options: -Weverything
+  ghc-options: 
+    -- -Weverything
 
 executable example-client
   main-is: Main.hs
@@ -57,4 +58,5 @@
   other-modules:
       Compat
   default-language: Haskell2010
-  ghc-options: -Weverything
+  ghc-options: 
+   -- -Weverything
diff --git a/src/LSP/Client.hs b/src/LSP/Client.hs
--- a/src/LSP/Client.hs
+++ b/src/LSP/Client.hs
@@ -68,15 +68,6 @@
 import Control.Exception (SomeException)
 
 --------------------------------------------------------------------------------
--- These should be added to Language.Haskell.LSP.TH.DataTypesJSON
-
-instance Traversable LSP.List where
-  traverse f (LSP.List l) = LSP.List <$> traverse f l
-
-instance Foldable LSP.List where
-  foldMap f (LSP.List l) = foldMap f l
-
---------------------------------------------------------------------------------
 -- The types
 
 data ClientMessage
