diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -1,30 +1,21 @@
-Copyright John Ky (c) 2016
-
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
+MIT License
 
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
+Copyright (c) 2016 John Ky
 
-    * Redistributions in binary form must reproduce the above
-      copyright notice, this list of conditions and the following
-      disclaimer in the documentation and/or other materials provided
-      with the distribution.
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
 
-    * Neither the name of Author name here nor the names of other
-      contributors may be used to endorse or promote products derived
-      from this software without specific prior written permission.
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
 
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -52,7 +52,7 @@
 import HaskellWorks.Data.Succinct.RankSelect.Binary.Poppy512
 import HaskellWorks.Data.Positioning
 import qualified Data.Vector.Storable as DVS
-import HaskellWorks.Data.Vector.VectorLike
+import HaskellWorks.Data.IndexedSeq
 (jsonBS, jsonIb, jsonBp) <- loadJsonRawWithIndex "firehose.json"
 let bp1 = SimpleBalancedParens jsonBp
 let bp2 = SimpleBalancedParens (makePoppy512 jsonBp)
diff --git a/hw-mquery.cabal b/hw-mquery.cabal
--- a/hw-mquery.cabal
+++ b/hw-mquery.cabal
@@ -1,9 +1,9 @@
 name:                   hw-mquery
-version:                0.1.0.0
+version:                0.1.0.1
 synopsis:               Conduits for tokenizing streams.
 description:            Please see README.md
 homepage:               http://github.com/haskell-works/hw-mquery#readme
-license:                BSD3
+license:                MIT
 license-file:           LICENSE
 author:                 John Ky
 maintainer:             newhoggy@gmail.com
diff --git a/src/HaskellWorks/Data/MQuery.hs b/src/HaskellWorks/Data/MQuery.hs
--- a/src/HaskellWorks/Data/MQuery.hs
+++ b/src/HaskellWorks/Data/MQuery.hs
@@ -11,7 +11,6 @@
 import qualified Data.DList                           as DL
 import           GHC.Base
 import           HaskellWorks.Data.Entry
--- import           HaskellWorks.Data.Json.PartialValue
 import           HaskellWorks.Data.Row
 import           HaskellWorks.Data.ToBool
 import           Text.PrettyPrint.ANSI.Leijen
@@ -34,9 +33,6 @@
 instance ToBool (MQuery a) where
   toBool = toBool . mQuery
 
--- instance Pretty (MQuery JsonPartialValue) where
---   pretty = pretty . Row 120 . mQuery
-
 instance Pretty (MQuery String) where
   pretty x = prettyRowOfString (Row 120 (mQuery x))
 
@@ -46,43 +42,6 @@
 instance Pretty (MQuery Int) where
   pretty x = prettyRowOfString (Row 120 (mQuery x))
 
--- instance Pretty (MQuery (Entry String JsonPartialValue)) where
---   pretty (MQuery das) = pretty (Row 120 das)
---
--- hasKV :: String -> JsonPartialValue -> JsonPartialValue -> MQuery JsonPartialValue
--- hasKV k v (JsonPartialObject xs)  = if (k, v) `elem` xs then MQuery (DL.singleton (JsonPartialObject xs)) else MQuery DL.empty
--- hasKV _ _  _                      = MQuery DL.empty
---
--- item :: JsonPartialValue -> MQuery JsonPartialValue
--- item jpv = case jpv of
---   JsonPartialArray es -> MQuery $ DL.fromList es
---   _                   -> MQuery   DL.empty
---
--- entry :: JsonPartialValue -> MQuery (Entry String JsonPartialValue)
--- entry jpv = case jpv of
---   JsonPartialObject fs  -> MQuery $ DL.fromList (uncurry Entry `map` fs)
---   _                     -> MQuery   DL.empty
---
--- asString :: JsonPartialValue -> MQuery String
--- asString jpv = case jpv of
---   JsonPartialString s -> MQuery $ DL.singleton s
---   _                   -> MQuery   DL.empty
---
--- asInteger :: JsonPartialValue -> MQuery Integer
--- asInteger jpv = case jpv of
---   JsonPartialNumber n -> MQuery $ DL.singleton (floor n)
---   _                   -> MQuery   DL.empty
---
--- castAsInteger :: JsonPartialValue -> MQuery Integer
--- castAsInteger jpv = case jpv of
---   JsonPartialString n -> MQuery $ DL.singleton (read n)
---   JsonPartialNumber n -> MQuery $ DL.singleton (floor n)
---   _                   -> MQuery   DL.empty
---
--- named :: String -> Entry String JsonPartialValue -> MQuery JsonPartialValue
--- named fieldName (Entry fieldName' jpv) | fieldName == fieldName'  = MQuery $ DL.singleton jpv
--- named _         _                                                 = MQuery   DL.empty
-
 satisfying :: (a -> Bool) -> a -> MQuery a
 satisfying p a | p a  = MQuery $ DL.singleton a
 satisfying _ _        = MQuery   DL.empty
@@ -99,20 +58,6 @@
 select :: ToBool b => a -> (a -> b) -> MQuery a
 select a f = if toBool (f a) then MQuery (DL.singleton a) else MQuery DL.empty
 
--- jsonKeys :: JsonPartialValue -> [String]
--- jsonKeys jpv = case jpv of
---   JsonPartialObject fs  -> fst `map` fs
---   _                     -> []
---
--- hasKey :: String -> JsonPartialValue -> Bool
--- hasKey fieldName jpv = fieldName `elem` jsonKeys jpv
---
--- jsonSize :: JsonPartialValue -> MQuery JsonPartialValue
--- jsonSize jpv = case jpv of
---   JsonPartialArray  es  -> MQuery (DL.singleton (JsonPartialNumber (fromIntegral (length es))))
---   JsonPartialObject es  -> MQuery (DL.singleton (JsonPartialNumber (fromIntegral (length es))))
---   _                     -> MQuery (DL.singleton (JsonPartialNumber 0))
-
 having :: (a -> MQuery b) -> a -> MQuery a
 having p a = case p a of
   MQuery das -> case DL.toList das of
@@ -136,6 +81,9 @@
 
 onList :: ([a] -> [a]) -> MQuery a -> MQuery a
 onList f (MQuery xs) = MQuery ((DL.fromList . f . DL.toList) xs)
+
+count :: MQuery a -> MQuery Int
+count (MQuery xs) = MQuery (DL.singleton (length (DL.toList xs)))
 
 aggregate :: ([a] -> b) -> MQuery a -> MQuery b
 aggregate f (MQuery xs) = MQuery (DL.fromList [f (DL.toList xs)])
diff --git a/src/HaskellWorks/Data/Micro.hs b/src/HaskellWorks/Data/Micro.hs
--- a/src/HaskellWorks/Data/Micro.hs
+++ b/src/HaskellWorks/Data/Micro.hs
@@ -5,7 +5,6 @@
 module HaskellWorks.Data.Micro where
 
 import qualified Data.DList                           as DL
--- import           HaskellWorks.Data.Json.PartialValue
 import           Text.PrettyPrint.ANSI.Leijen
 
 newtype Micro a = Micro a
@@ -20,20 +19,6 @@
 prettyKvs :: Pretty (Micro a) => [a] -> Doc
 prettyKvs (kv:kvs) = pretty (Micro kv) <> foldl (<>) empty ((\jv -> text ", " <> pretty (Micro jv)) `map` kvs)
 prettyKvs []       = empty
-
--- instance Pretty (Micro JsonPartialValue) where
---   pretty (Micro (JsonPartialString s )) = dullgreen (text (show s))
---   pretty (Micro (JsonPartialNumber n )) = cyan      (text (show n))
---   pretty (Micro (JsonPartialObject [])) = text "{}"
---   pretty (Micro (JsonPartialObject _ )) = text "{..}"
---   pretty (Micro (JsonPartialArray [] )) = text "[]"
---   pretty (Micro (JsonPartialArray _  )) = text "[..]"
---   pretty (Micro (JsonPartialBool w   )) = red (text (show w))
---   pretty (Micro  JsonPartialNull      ) = text "null"
---   pretty (Micro (JsonPartialError s  )) = text "<error " <> text s <> text ">"
---
--- instance Pretty (Micro (String, JsonPartialValue)) where
---   pretty (Micro (fieldName, jpv)) = red (text (show fieldName)) <> text ": " <> pretty (Micro jpv)
 
 instance Pretty a => Pretty (Micro [a]) where
   pretty (Micro xs) = case length xs of
diff --git a/src/HaskellWorks/Data/Mini.hs b/src/HaskellWorks/Data/Mini.hs
--- a/src/HaskellWorks/Data/Mini.hs
+++ b/src/HaskellWorks/Data/Mini.hs
@@ -5,7 +5,6 @@
 
 import qualified Data.DList                           as DL
 import           HaskellWorks.Data.AtLeastSize
--- import           HaskellWorks.Data.Json.PartialValue
 import           HaskellWorks.Data.Micro
 import           Text.PrettyPrint.ANSI.Leijen
 
@@ -18,23 +17,3 @@
 
 instance Pretty (Mini a) => Pretty (Mini (DL.DList a)) where
   pretty (Mini xs) = vcat (punctuate (text ",") ((pretty . Mini) `map` take 10 (DL.toList xs)))
-
--- instance Pretty (Mini JsonPartialValue) where
---   pretty mjpv = case mjpv of
---     Mini (JsonPartialString s   ) -> dullgreen  (text (show s))
---     Mini (JsonPartialNumber n   ) -> cyan       (text (show n))
---     Mini (JsonPartialObject []  ) -> text "{}"
---     Mini (JsonPartialObject kvs ) -> case kvs of
---       (_:_:_:_:_:_:_:_:_:_:_:_:_) -> text "{" <> prettyKvs kvs <> text ", ..}"
---       []                          -> text "{}"
---       _                           -> text "{" <> prettyKvs kvs <> text "}"
---     Mini (JsonPartialArray []   ) -> text "[]"
---     Mini (JsonPartialArray vs   ) | vs `atLeastSize` 11 -> text "[" <> nest 2 (prettyVs (Micro `map` take 10 vs)) <> text ", ..]"
---     Mini (JsonPartialArray vs   ) | vs `atLeastSize` 1  -> text "[" <> nest 2 (prettyVs (Micro `map` take 10 vs)) <> text "]"
---     Mini (JsonPartialArray _    )                       -> text "[]"
---     Mini (JsonPartialBool w     ) -> red (text (show w))
---     Mini  JsonPartialNull         -> text "null"
---     Mini (JsonPartialError s    ) -> text "<error " <> text s <> text ">"
---
--- instance Pretty (Mini (String, JsonPartialValue)) where
---   pretty (Mini (fieldName, jpv)) = text (show fieldName) <> text ": " <> pretty (Mini jpv)
