code: def add_grist (features):
      
      assert is_iterable_typed(features, basestring) or isinstance(features, basestring)
      def grist_one (feature):
          if feature [0] != '<' and feature [len (feature) - 1] != '>':
              return '<' + feature + '>'
          else:
              return feature
  
      if isinstance (features, str):
          return grist_one (features)
      else:
          return [ grist_one (feature) for feature in features ]
docs: Transform a string by bracketing it with "<>". If already bracketed, does nothing.
          features: one string or a sequence of strings
          return: the gristed string, if features is a string, or a sequence of gristed strings, if features is a sequence