docs: def import_module(modulefn):
    """
    <Purpose>
      Imports a seash module with the specified modulename.
      The seash module is treated as a python package  
      
    <Arguments>
      modulefn:
        The name of the main modules file.
        
    <Side Effects>
      The commands found in modulename, alongside the helptext for the module
      will be imported and returned.
      
    <Exceptions>
      ImportError
      
    <Return>
      A dictionary containing the command_dict and the helptext.
  
      An example: {
        'command_dict': {'command1': ...,'command2':...},
        'help_text': 'This is the module helpstring'
      }
  
    """
    # We can't import python modules by specifying the full path to the module
    # Temporarily add the module path to the pythonpath
    sys.path = [MODULES_FOLDER_PATH] + sys.path
    moduleobj = __import__(modulefn)
    try:
      _attach_module_identifier(moduleobj.moduledata['command_dict'], modulefn)
      return moduleobj.moduledata
    except (NameError, KeyError):
      raise seash_exceptions.ModuleImportError("Module '" + modulefn + "' is not well defined")
    finally:
      # Remove the module path from the pythonpath because we don't need it anymore
      sys.path = sys.path[1:]