diff --git skinr.module skinr.module
index d23282f..0434e73 100644
--- skinr.module
+++ skinr.module
@@ -2,7 +2,7 @@
 // $Id$
 
 /**
- * Implementation of hook_help().
+ * Implements hook_help().
  */
 function skinr_help($path, $arg) {
   switch ($path) {
@@ -18,7 +18,7 @@ function skinr_help($path, $arg) {
 }
 
 /**
- * Implementation of hook_init().
+ * Implements hook_init().
  */
 function skinr_init() {
   module_load_include('inc', 'skinr', 'skinr.handlers');
@@ -26,7 +26,7 @@ function skinr_init() {
 }
 
 /**
- * Implementation of hook_preprocess().
+ * Implements hook_preprocess().
  */
 function skinr_preprocess(&$variables, $hook) {
   // Fix for update script.
@@ -64,7 +64,7 @@ function skinr_preprocess(&$variables, $hook) {
         }
         $variables['classes_array'] = array_merge($variables['classes_array'], $extracted['classes']);
 
-        // Need to add a hook for skinr_ui to plug into.
+        // Add a hook for skinr_ui to plug into: hook_skinr_preprocess_alter().
         $data = array(
           'hook' => $hook,
           'variables' => &$variables,
@@ -76,6 +76,22 @@ function skinr_preprocess(&$variables, $hook) {
   }
 }
 
+/**
+ * Helper function to extract the classes, js and css files, and templates
+ * that we are applying.
+ *
+ * @param $module
+ *   The module these settings applies to.
+ * @param $sids
+ *   The ID, or an array of IDs, for these settings.
+ * @param $theme
+ *   The theme these settings apply to. If no theme name is provided, the
+ *   current theme will be used.
+ *
+ * @return
+ *   An array containing the module, sids, classes, css, js, template to be
+ *   applied.
+ */
 function skinr_skin_extract($module, $sids, $settings, $theme = NULL) {
   if (empty($sids)) {
     return FALSE;
@@ -255,6 +271,12 @@ function _skinr_add_file($filename, $type, $media = NULL) {
 
 /**
  * Helper function to flatten an array of classes settings.
+ *
+ * @param $skins
+ *   The array of skins to flatten.
+ *
+ * @return
+ *   An array of classes.
  */
 function skinr_flatten_skins_array($skins) {
   $return = array();
@@ -275,10 +297,16 @@ function skinr_flatten_skins_array($skins) {
 }
 
 // ------------------------------------------------------------------
-// Page rule functions.
+// Rule functions.
 
 /**
- * Save a skinr page rule object.
+ * Save a skinr rule object.
+ *
+ * @param $rule
+ *   A rule object.
+ *
+ * @return
+ *   The rule ID.
  */
 function skinr_rule_save($rule) {
   drupal_write_record('skinr_rules', $rule, !empty($rule->rid) ? array('rid') : array());
@@ -286,7 +314,14 @@ function skinr_rule_save($rule) {
 }
 
 /**
- * Load a skinr page rule object.
+ * Load a skinr rule object.
+ *
+ * @param $rid
+ *   The rule ID.
+ *
+ * @return
+ *   A rule object. If no $rid is specified an array of all rules will be
+ *   returned.
  */
 function skinr_rule_load($rid = NULL) {
   $rids = (isset($rid) ? array($rid) : array());
@@ -295,7 +330,16 @@ function skinr_rule_load($rid = NULL) {
 }
 
 /**
- * Loads multiple skinr page rule objects.
+ * Loads multiple skinr rule objects.
+ *
+ * @param $rids
+ *   An array of rule IDs. Optional.
+ * @param $conditions
+ *   An array of conditions on the {skinr_rules} table in the form 'field' => $value.
+ *
+ * @return
+ *   An array of rule objects indexed by rid. If $rids is not provided, all
+ *   rules are returned.
  */
 function skinr_rule_load_multiple($rids = array(), $conditions = array()) {
   $rules = array();
@@ -314,7 +358,10 @@ function skinr_rule_load_multiple($rids = array(), $conditions = array()) {
 }
 
 /**
- * Delete a skinr page rule object.
+ * Delete a skinr rule object.
+ *
+ * @param $rid
+ *   The rule ID.
  */
 function skinr_rule_delete($rid) {
   if ($rule = skinr_rule_load($rid)) {
@@ -328,6 +375,15 @@ function skinr_rule_delete($rid) {
   }
 }
 
+/**
+ * Determin whether a rule is visible to the current page or not.
+ *
+ * @param $rid
+ *   The rule ID.
+ *
+ * @return
+ *   TRUE if the rule is visible to the current page, FALSE otherwise.
+ */
 function skinr_rule_visible($rid) {
   global $user;
 
@@ -368,7 +424,12 @@ function skinr_rule_visible($rid) {
 // Include file helpers.
 
 /**
- * Load skinr files on behalf of modules.
+ * Include files as necessary.
+ *
+ * @param $file
+ *   The file to include. The file needs to be prefixed with the
+ *   implementing module's name, but do not include the module name
+ *   prefix (i.e. MODULE.$file).
  */
 function skinr_module_include($file) {
   foreach (skinr_get_module_apis() as $module => $info) {
