/**
  * Removes all the crap from the url, so we can figure out what section we
  * 	need to load templates & includes for.
  */
 private function clean_url($section = NULL)
 {
     if (!strlen($section) && strlen($this->section)) {
         //if argument wasn't given, use internal pointer.
         $section = $this->section;
     }
     //make sure we've still got something valid to work with.
     if (strlen($section)) {
         try {
             $section = ToolBox::clean_url($section);
         } catch (Exception $e) {
             //hide the exception and allow it to return NULL.
         }
     } else {
         $section = null;
     }
     return $section;
 }