diff --git a/src/extraction/core/extractor.py b/src/extraction/core/extractor.py
index 6a5af6bcbfef415ede6d3c0b2ca70b276c86bcb0..25668e6a0bbd38aee9a6af8d01745352678aa3fe 100644
--- a/src/extraction/core/extractor.py
+++ b/src/extraction/core/extractor.py
@@ -39,7 +39,7 @@ RED_FUNS = load_redfuns()
 
 class ExtractorParameters(ParametersABC):
     """
-    Base class to define parameters for extraction
+    Base class to define parameters for extraction.
     """
 
     def __init__(
@@ -55,7 +55,7 @@ class ExtractorParameters(ParametersABC):
             Nested dictionary indicating channels, reduction functions and
             metrics to be used.
             str channel -> U(function,None) reduction -> str metric
-            If not of depth three, tree will be filled with Nones.
+            If not of depth three, tree will be filled with None.
         sub_bg: set
         multichannel_ops: dict
         """
@@ -66,7 +66,7 @@ class ExtractorParameters(ParametersABC):
     @staticmethod
     def guess_from_meta(store_name: str, suffix="fast"):
         """
-        Find the microscope used from the h5 metadata
+        Find the microscope used from the h5 metadata.
 
         Parameters
         ----------
@@ -91,25 +91,28 @@ class ExtractorParameters(ParametersABC):
 
 class Extractor(ProcessABC):
     """
-    The Extractor applies a metric, such as area or median, to cells identified in the image tiles using the cell masks.
+    Apply a metric to cells identified in the tiles.
 
-    Its methods therefore require both tile images and masks.
+    Using the cell masks, the Extractor applies a metric, such as area or median, to cells identified in the image tiles.
 
-    Usually one metric is applied to the masked area in a tile, but there are metrics that depend on the whole tile.
+    Its methods require both tile images and masks.
 
-    Extraction follows a three-level tree structure. Channels, such as GFP, are the root level; the second level is the reduction algorithm, such as maximum projection; the last level is the metric - the specific operation to apply to the cells in the image identified by the mask, such as median, which is the median value of the pixels in each cell.
+    Usually the metric is applied to only a tile's masked area, but some metrics depend on the whole tile.
+
+    Extraction follows a three-level tree structure. Channels, such as GFP, are the root level; the reduction algorithm, such as maximum projection, is the second level; the specific metric, or operation, to apply to the masks is the third level.
 
     Parameters
     ----------
     parameters: core.extractor Parameters
-        Parameters that include with channels, reduction and
-        extraction functions to use.
+        Parameters that include the channels, and reduction and
+        extraction functions.
     store: str
-        Path to hdf5 storage file. Must contain cell outlines.
+        Path to the h5 file, which must contain the cell masks.
     tiler: pipeline-core.core.segmentation tiler
-        Class that contains or fetches the image to be used for segmentation.
+        Class that contains or fetches the images used for segmentation.
     """
 
+    # Alan: should this data be stored here or all such data in a separate file
     default_meta = {
         "pixel_size": 0.236,
         "z_size": 0.6,
@@ -150,7 +153,7 @@ class Extractor(ProcessABC):
         store: str,
         tiler: Tiler,
     ):
-        # initate from tiler
+        """Initiate from a tiler instance."""
         return cls(parameters, store=store, tiler=tiler)
 
     @classmethod
@@ -160,12 +163,12 @@ class Extractor(ProcessABC):
         store: str,
         img_meta: tuple,
     ):
-        # initiate from image
+        """Initiate from images."""
         return cls(parameters, store=store, tiler=Tiler(*img_meta))
 
     @property
     def channels(self):
-        # returns a tuple of strings of the available channels
+        """Get a tuple of the available channels."""
         if not hasattr(self, "_channels"):
             if type(self.params.tree) is dict:
                 self._channels = tuple(self.params.tree.keys())
@@ -226,7 +229,7 @@ class Extractor(ProcessABC):
         self._all_funs = {**self._custom_funs, **FUNS}
 
     def load_meta(self):
-        # load metadata from h5 file whose name is given by self.local
+        """Load metadata from h5 file."""
         self.meta = load_attributes(self.local)
 
     def get_tiles(
@@ -237,8 +240,9 @@ class Extractor(ProcessABC):
         **kwargs,
     ) -> t.Optional[np.ndarray]:
         """
-        Finds traps for a given time point and given channels and z-stacks.
-        Returns None if no traps are found.
+        Find tiles for a given time point and given channels and z-stacks.
+
+        Returns None if no tiles are found.
 
         Any additional keyword arguments are passed to tiler.get_tiles_timepoint
 
@@ -378,7 +382,6 @@ class Extractor(ProcessABC):
                     self.reduce_dims(trap, method=RED_FUNS[red_fun])
                     for trap in traps
                 ]
-
         d = {
             red_fun: self.extract_funs(
                 metrics=metrics,
@@ -395,6 +398,7 @@ class Extractor(ProcessABC):
     ) -> np.ndarray:
         """
         Collapse a z-stack into 2d array using method.
+
         If method is None, return the original data.
 
         Parameters
@@ -419,7 +423,7 @@ class Extractor(ProcessABC):
         **kwargs,
     ) -> t.Dict[str, t.Dict[str, t.Dict[str, tuple]]]:
         """
-        Core extraction method for an individual time-point.
+        Extract for an individual time-point.
 
         Parameters
         ----------
@@ -561,7 +565,7 @@ class Extractor(ProcessABC):
 
     def get_imgs(self, channel: t.Optional[str], traps, channels=None):
         """
-        Returns the image from a correct source, either raw or bgsub
+        Return image from a correct source, either raw or bgsub.
 
         Parameters
         ----------
@@ -586,7 +590,7 @@ class Extractor(ProcessABC):
 
     def run_tp(self, tp, **kwargs):
         """
-        Wrapper to add compatiblibility with other steps of the pipeline.
+        Wrapper to add compatibility with other steps of the pipeline.
         """
         return self.run(tps=[tp], **kwargs)
 
@@ -680,7 +684,7 @@ def flatten_nesteddict(
     nest: dict, to="series", tp: int = None
 ) -> t.Dict[str, pd.Series]:
     """
-    Converts a nested extraction dict into a dict of pd.Series
+    Convert a nested extraction dict into a dict of pd.Series.
 
     Parameters
     ----------
@@ -709,6 +713,7 @@ def flatten_nesteddict(
 class hollowExtractor(Extractor):
     """
     Extractor that only cares about receiving images and masks.
+
     Used for testing.
     """