code: def register_type (type, suffixes, base_type = None, os = []):
      
      assert isinstance(type, basestring)
      assert is_iterable_typed(suffixes, basestring)
      assert isinstance(base_type, basestring) or base_type is None
      assert is_iterable_typed(os, basestring)
      if registered (type):
          return
  
      if not os or os_name () in os:
          register (type, suffixes, base_type)
docs: Register the given type on the specified OSes, or on remaining OSes
          if os is not specified.  This rule is injected into each of the type
          modules for the sake of convenience.