diff --git a/Control/Enumerable.hs b/Control/Enumerable.hs
--- a/Control/Enumerable.hs
+++ b/Control/Enumerable.hs
@@ -48,9 +48,12 @@
 import Control.Enumerable.Derive hiding (global)
 
 instance (Typeable f, Sized f) => Sized (Shareable f) where
-  pay       = Shareable . fmap pay . run
-  fin       = Shareable . const . fin
-  pair x y  = Shareable $ \r -> pair (run x r) (run y r)
+  pay         = Shareable . fmap pay . run
+  fin         = Shareable . const . fin
+  pair x y    = Shareable $ \r -> pair (run x r) (run y r)
+  aconcat xs  = Shareable $ \r -> aconcat (map (`run` r) xs) 
+  finSized    = Shareable . const . finSized
+  naturals    = Shareable (const naturals)
 
 class Typeable a => Enumerable a where
   enumerate :: (Typeable f, Sized f) => Shared f a
diff --git a/size-based.cabal b/size-based.cabal
--- a/size-based.cabal
+++ b/size-based.cabal
@@ -1,7 +1,7 @@
 name:                size-based
-version:             0.1.1.0
+version:             0.1.2.0
 synopsis:            Sized functors, for size-based enumerations
-description:
+description:         A framework for size-based enumerations. See the module documentations for details. 
 
 license:             BSD3
 license-file:        LICENSE
@@ -31,7 +31,7 @@
   build-depends:       base >=4.7 && <5,
                        dictionary-sharing >= 0.1 && < 1.0,
                        testing-type-modifiers >= 0.1 && < 1.0,
-                       template-haskell  >=2.5 && <2.14
+                       template-haskell  >=2.5 && <2.15
   if impl(ghc < 8.0)
     build-depends: semigroups < 0.19
   default-language:    Haskell2010
