Makes the following changes from the RawConfigParser:

        1. Prepends options with a tab character.
        2. Does not write a blank line between sections.
        3. When an option's value is a list, a line for each option is written.
           This allows us to support multivars like a remote's "fetch" option.
        4. Drops support for continuation lines.

def write(self, fp_):
        '''
        Makes the following changes from the RawConfigParser:

        1. Prepends options with a tab character.
        2. Does not write a blank line between sections.
        3. When an option's value is a list, a line for each option is written.
           This allows us to support multivars like a remote's "fetch" option.
        4. Drops support for continuation lines.
        '''
        convert = salt.utils.stringutils.to_bytes \
            if 'b' in fp_.mode \
            else salt.utils.stringutils.to_str
        if self._defaults:
            fp_.write(convert('[%s]\n' % self.DEFAULTSECT))
            for (key, value) in six.iteritems(self._defaults):
                value = salt.utils.stringutils.to_unicode(value).replace('\n', '\n\t')
                fp_.write(convert('%s = %s\n' % (key, value)))
        for section in self._sections:
            fp_.write(convert('[%s]\n' % section))
            for (key, value) in six.iteritems(self._sections[section]):
                if (value is not None) or (self._optcre == self.OPTCRE):
                    if not isinstance(value, list):
                        value = [value]
                    for item in value:
                        fp_.write(convert('\t%s\n' % ' = '.join((key, item)).rstrip()))