code: def reverse_last_first(self, name):
          
          # make sure we don't put a suffix in the middle, as in "Smith, Tom II"
          name, suffix = self.extract_suffix(name)
  
          split = re.split(', ?', name)
  
          # make sure that the comma is not just preceding a suffix, such as "Jr",
          # by checking that we have at least 2 name parts and the last doesn't match
          # our suffix regex
          if len(split) >= 2:
              split.reverse()
  
          if suffix:
              split.append(suffix)
  
          return ' '.join(split)
docs: Takes a name that is in [last, first] format and returns it in a hopefully [first last] order.
              Also extracts the suffix and puts it back on the end, in case it's embedded somewhere in the middle.