diff --git a/modules/mol/mm/doc/buildingblock.rst b/modules/mol/mm/doc/buildingblock.rst
index 12b89c5c35ac030be9bfb617cf3dce16ad419ad9..c9dbcfd7d936986f5ed18ffa1a3905e852fe6918 100644
--- a/modules/mol/mm/doc/buildingblock.rst
+++ b/modules/mol/mm/doc/buildingblock.rst
@@ -32,6 +32,7 @@ The BuildingBlock Class
     :type residue:    :class:`ResidueHandle`
     :type match_connectivity:    :class:`bool`
 
+    :returns: :class:`bool`
 
   .. method:: Connect(residue, editor)
 
@@ -39,7 +40,7 @@ The BuildingBlock Class
     BuildingBlock.
 
     :param residue:     Residue to be connected
-    :param editor:      Editor associated to the residues entity
+    :param editor:      Editor associated to the residue's entity
 
     :type residue:      :class:`ResidueHandle`
     :type editor:       :class:`XCSEditor`
@@ -95,13 +96,13 @@ The BuildingBlock Class
   .. method:: RemoveInteractionsToPrev()
 
     Removes all interactions associated to an atom of a previous residues.
-    This gets indicated by an atom name prefixed by a *-*
+    This gets indicated in the :class:`BuildingBlock` by an atom name prefixed by a *-*
 
 
   .. method:: RemoveInteractionsToNext()
 
     Removes all interactions associated to an atom of a next residues.
-    This gets indicated by an atom name prefixed by a *+*
+    This gets indicated in the :class:`BuildingBlock` by an atom name prefixed by a *+*
 
 
   .. method:: AddBond(bond, [,replace_existing = False])
@@ -178,10 +179,12 @@ The BuildingBlock Class
 
     Gets forcefield type from atom with given name
 
-    :param name:        Name from atom you want the type from
+    :param name:        Name of atom you want the type from
 
     :type name:         :class:`str`
 
+    :returns: :class:`str`
+
     :raises:            :class:`RuntimeError` when atom can not be found in 
                         BuildingBlock    
 
@@ -189,10 +192,12 @@ The BuildingBlock Class
 
     Gets charge from atom with given name
 
-    :param name:        Name from atom you want the charge from
+    :param name:        Name of atom you want the charge from
 
     :type name:         :class:`str`
 
+    :returns: :class:`float`
+
     :raises: :class:`RuntimeError` when atom can not be found in 
                                    BuildingBlock 
 
@@ -201,10 +206,12 @@ The BuildingBlock Class
 
     Gets mass from atom with given name
 
-    :param name:        Name from atom you want the mass from
+    :param name:        Name of atom you want the mass from
 
     :type name:         :class:`str`
 
+    :returns: :class:`float`
+    
     :raises: :class:`RuntimeError` when atom can not be found in 
                                    BuildingBlock 
 
@@ -260,6 +267,10 @@ The BuildingBlock Class
 
 Block Modifiers
 --------------------------------------------------------------------------------
+.. class:: BlockModifier
+  
+  Basis class. Block modifiers are used to change building blocks or residues.
+  See :class:`GromacsBlockModifier` for a specific example.
 
 .. class:: GromacsBlockModifier
 
@@ -376,6 +387,11 @@ Block Modifiers
 Hydrogen Constructors
 --------------------------------------------------------------------------------
 
+.. class:: HydrogenConstructor
+
+  Basis class. Hydrogen constructors are used to add hydrogens to residues.
+
+
 .. class:: GromacsHydrogenConstructor
 
   The :class:`GromacsHydrogenConstructor` is the Gromacs way of adding
diff --git a/modules/mol/mm/doc/forcefield.rst b/modules/mol/mm/doc/forcefield.rst
index 3dbc9d07921a5886c791c8ed35a0c0e3c0beddf6..9c5754152381c0712e176100ffe0d42a8cbb4f3b 100644
--- a/modules/mol/mm/doc/forcefield.rst
+++ b/modules/mol/mm/doc/forcefield.rst
@@ -7,7 +7,7 @@ The forcefields are a dump for interactions with their parameters, but also
 for atom specific information or residue definitions in the form of a 
 :class:`BuildingBlock`. Objects for modifying residues can be set in form of 
 :class:`BlockModifier` or :class:`HydrogenConstructor`.
-They're also involved in the naming mess we're observing in the molecular mechanics
+They're also involved in dealing with the naming mess we're observing in the molecular mechanics
 community and contain definable renaming rules that can be applied on an
 :class:`EntityHandle` for renaming from e.g. PDB standard to the forcefield
 specific standard. The standard forcefields in OpenStructure are loaded from
@@ -66,9 +66,9 @@ as they are used in Gromacs.
   .. method:: ReadResidueDatabase(basename)
 
     Searches and reads all files belonging the the residue database
-    defined by **basename**. With basename aminoacids this function
-    searches and reads all files in the base_dir matching aminoacids.x
-    where x is .rtp .arn .hdb .n.tdb .c.tdb .vsd .r2b
+    defined by **basename**. With *basename=aminoacids* this function
+    searches and reads all files in the **base_dir** matching *aminoacids.x*
+    where *x* is *.rtp .arn .hdb .n.tdb .c.tdb .vsd .r2b*.
     Only the rtp file is mandatory, all others are neglected if not present.
 
     :param basename:    Basename of residue database to be loaded
@@ -77,8 +77,8 @@ as they are used in Gromacs.
 
   .. method:: ReadITP(basename)
 
-    Searches and reads the itp file in the **base_dir**. **basename** amazing_ion
-    would therefore load the file amazing_ion.itp
+    Searches and reads the itp file in the **base_dir**. *basename=amazing_ion*
+    would therefore load the file *amazing_ion.itp*
 
     :param basename:    Basename of itp file to be loaded
 
@@ -191,7 +191,7 @@ The Forcefield Class
 
   .. method:: AddDihedral(dihedral)
 
-    :param dihedral:    Bond to be added
+    :param dihedral:    Dihedral to be added
 
     :type dihedral:     :class:`Interaction`     
 
@@ -280,7 +280,7 @@ The Forcefield Class
     :param factor:      Factor with which the 1,4 electrostatic term
                         should be dampened
 
-    :type factor:       :class:`factor`
+    :type factor:       :class:`float`
 
 
   .. method:: SetGenPairs(gen_pairs)
@@ -294,7 +294,7 @@ The Forcefield Class
 
   .. method:: AddResidueRenamingRule(name, ff_main_name, ff_n_ter_name, ff_c_ter_name, ff_two_ter_name)
 
-    :param name:        Original name or the residue 
+    :param name:        Original name of the residue 
                         (e.g. PDB/Gromacs standard)
     :param ff_main_name: Forcefield specific residue name
     :param ff_n_ter_name: Forcefield specific name if the residue
@@ -314,8 +314,8 @@ The Forcefield Class
 
   .. method:: AddAtomRenamingRule(res_name, old_atom_name, new_atom_name)
 
-    :param res_name:    Forcefield specific residue name the
-                                     atom belongs
+    :param res_name:    Forcefield specific name of the residue the
+                                     atom belongs to
 
     :param old_atom_name: Atom name in PDB/Gromacs standard
 
@@ -582,7 +582,7 @@ The Forcefield Class
 
     :type type:         :class:`str`
 
-    :returns: the mass
+    :returns:           :class:`float` - the mass
 
     :raises:            :class:`RuntimeError` if no mass has been set for this 
                         atom type
@@ -590,13 +590,13 @@ The Forcefield Class
 
   .. method:: GetFudgeLJ()
 
-    :returns:  Factor with which the 1,4 Lennard Jones term
-               should be dampened
+    :returns:  :class:`float` - Factor with which the 1,4 Lennard Jones 
+                term should be dampened
 
   .. method:: GetFudgeQQ()
 
-    :returns:  Factor with which the 1,4 electrostatic term
-               should be dampened
+    :returns:  :class:`float` - Factor with which the 1,4 
+                electrostatic term should be dampened
 
 
   .. method:: GetAtomType(res_name, atom_name)
@@ -609,7 +609,7 @@ The Forcefield Class
     :type res_name:     :class:`str`
     :type atom_name:    :class:`str`
 
-    :returns:  atom type
+    :returns:           :class:`str` - atom type
 
     :raises:            :class:`RuntimeError` if forcefield has no such
                         :class:`BuildingBlock` or when atom is not present 
diff --git a/modules/mol/mm/doc/integrators.rst b/modules/mol/mm/doc/integrators.rst
index 326a7831eb8d84ac88fb7bdfca2f641145ef47df..1db383bde8ecb7981e90640528e8fe583549ad07 100644
--- a/modules/mol/mm/doc/integrators.rst
+++ b/modules/mol/mm/doc/integrators.rst
@@ -3,9 +3,11 @@ Integrators
 
 .. currentmodule:: ost.mol
 
-The Integrators are a wrapper around the integrators provided by OpenMM and
-have to be attached to the :class:`Settings` when setting up a simulation.
-It provides a way of making the thing shake.
+.. class:: Integrator
+
+  The :class:`Integrator` are a wrapper around the integrators provided by OpenMM and
+  have to be attached to the :class:`Settings` when setting up a simulation.
+  It provides a way of making the thing shake.
 
 
 
@@ -55,7 +57,7 @@ Langevin Dynamics
 
   .. method:: GetTemperature()
 
-    :returns:         :class:`float`
+    :returns:         :class:`float` - the temperature in K
 
   .. method:: SetTemperature(temperature)
 
@@ -64,7 +66,7 @@ Langevin Dynamics
 
   .. method:: GetFriction()
 
-    :returns:           :class:`float`
+    :returns:           :class:`float` - the friction in 1/ps
 
   .. method:: SetFriction(friction)
 
@@ -98,7 +100,7 @@ Langevin Dynamics
 
   .. method:: GetTemperature()
 
-    :returns:         :class:`float`
+    :returns:         :class:`float` - the temperature in K
 
   .. method:: SetTemperature(temperature)
 
@@ -107,7 +109,7 @@ Langevin Dynamics
 
   .. method:: GetFriction()
 
-    :returns:           :class:`float`
+    :returns:           :class:`float` - the friction in 1/ps
 
   .. method:: SetFriction(friction)
 
@@ -151,7 +153,7 @@ Brownian Dynamics
 
   .. method:: GetTemperature()
 
-    :returns:           :class:`float`
+    :returns:           :class:`float` - the temperature in K
 
   .. method:: SetTemperature(temperature)
 
@@ -160,7 +162,7 @@ Brownian Dynamics
 
   .. method:: GetFriction()
 
-    :returns:           :class:`float`
+    :returns:           :class:`float` - the friction in 1/ps
 
   .. method:: SetFriction(friction)
 
diff --git a/modules/mol/mm/doc/interaction.rst b/modules/mol/mm/doc/interaction.rst
index d0f3abd7ca42b6fa27aeeab29d3ae373a1a8ab39..95d193e1a9e64b9e312590033bc3214d1b198fc9 100644
--- a/modules/mol/mm/doc/interaction.rst
+++ b/modules/mol/mm/doc/interaction.rst
@@ -63,7 +63,6 @@ Interaction Parametrization
 * HarmonicImproper, Interacting Particles: 4, Num Parameters: 2
 
   #. :class:`float` angle in radians
-  #. :class:`float` force constant in 
   #. :class:`float` force constant in kJ/mol/radian^2
 
 * CMap, Interacting Particles: 5, Num Parameters: n*n+1 
diff --git a/modules/mol/mm/doc/molmm.rst b/modules/mol/mm/doc/molmm.rst
index a6b67ddcfaf5190c12e238b7279c036013b97298..14df01078b3f1ab87318a1a66e7228e08dae1aca 100644
--- a/modules/mol/mm/doc/molmm.rst
+++ b/modules/mol/mm/doc/molmm.rst
@@ -8,11 +8,10 @@ Introduction
 
 The mol.mm module provides a wrapper around the 
 `OpenMM <http://openmm.org>`_ molecular mechanics library to provide
-basic md capabilities fully embedded into the OpenStructure universe.
+basic molecular dynamics (MD) capabilities fully embedded into the OpenStructure universe.
 The heart of every simulation is the :class:`Topology` describing how the 
-particles of an :class:`EntityHandle` interact. The :class:`Simulation` finally 
-connects the two and allows one to perform energy minimizations or move the 
-simulation through time using an :class:`Integrator`. 
+particles of an :class:`EntityHandle` interact. The :class:`Simulation` class connects the :class:`EntityHandle` with a :class:`Topology` and allows you to perform energy minimizations 
+or move the simulation through time using an :class:`Integrator`. 
 A :class:`Topology` can either be built from scratch by adding
 one interaction after the other or automatically using the
 :class:`TopologyCreator`. The process of :class:`Topology` building