docs: def _encapsulate_item_for_combinfunc(item):
      """
      This function has been extracted in order to 
      make Github issue #28 easier to investigate.
      It replaces the following two lines of code, 
      which occur twice in method genmatrix, just
      before the invocation of combinfunc.
          if not hasattr(item, '__iter__') or isinstance(item, tuple):
              item = [item]
      Logging was added to the original two lines
      and shows that the outcome of this snippet
      has changed between Python2.7 and Python3.5.
      This logging showed that the difference in 
      outcome consisted of the handling of the builtin
      str class, which was encapsulated into a list in
      Python2.7 but returned naked in Python3.5.
      Adding a test for this specific class to the 
      set of conditions appears to give correct behaviour
      under both versions.
      """
      encapsulated_item = None
      if  (
          not hasattr(item, '__iter__') or
          isinstance(item, tuple) or
          isinstance(item, str)
      ):
          encapsulated_item = [item]
      else:
          encapsulated_item = item
      logging.debug(
          "item class:%s encapsulated as:%s ",
          item.__class__.__name__, 
          encapsulated_item.__class__.__name__
      )
      return encapsulated_item