old_contents: #!/usr/bin/env python
  
  
  class UserBuilder(object):
      def __init__(self, username):
          self.username = username
          self.groups = []
          self.shell = None
  
      def add_group(self, group):
          self.groups.append(group)
          return self
  
      def set_groups(self, groups):
          self.groups = groups
          return self
  
      def set_shell(self, shell):
          self.shell = shell
          return self
  
      def build(self):
          # FIXME: build user in an idempotent manner
          pass
  
new_contents: #!/usr/bin/env python
  
  
  class UserBuilder(object):
      """A builder-pattern object that can be used to create or modify users"""
      
      def __init__(self, username):
          self.username = username
          self.groups = []
          self.shell = None
  
      def add_group(self, group):
          self.groups.append(group)
          return self
  
      def set_groups(self, groups):
          self.groups = groups
          return self
  
      def set_shell(self, shell):
          self.shell = shell
          return self
  
      def build(self):
          # FIXME: build user in an idempotent manner
          pass
  
subject: Add docstring to userbuilder