<!--- This environment context section helps us quickly review your PR. 
      Please take a minute to fill-out this information. -->

## Environment
**Liquibase Version**:  4.1

**Liquibase Integration & Version**: gradle

**Liquibase Extension(s) & Version**: 

**Database Vendor & Version**: any 

**Operating System Type & Version**: Win10, Java8

## Description
If you add two dbms to a changeset, it seperates them with ',xxx' instead of ','. Therefore the second dbms will not be correctly recognized.

 `<changeSet  dbms="oracle,xxxmssql" ... >`

## Steps To Reproduce
JUnit-Test to reproduce: 

```
  @Test
  void testLiquibaseXmlBug() throws IOException {
    ByteArrayOutputStream stream = new ByteArrayOutputStream();
    DatabaseChangeLog log = new DatabaseChangeLog();
    ChangeLogSerializer serializer = new XMLChangeLogSerializer();
    ChangeSet set = new ChangeSet("Test", "test", Boolean.FALSE, Boolean.FALSE, null, "context", "oracle, mssql",log);
    List<ChangeLogChild> changes = new ArrayList<>();
    changes.add(set);
    serializer.write(changes, stream);
    assertEquals("<?xml version=\"1.1\" encoding=\"UTF-8\" standalone=\"no\"?>"
                 + "<databaseChangeLog xmlns=\"http://www.liquibase.org/xml/ns/dbchangelog\" xmlns:ext=\"http://www.liquibase.org/xml/ns/dbchangelog-ext\" xmlns:pro=\"http://www.liquibase.org/xml/ns/pro\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/pro http://www.liquibase.org/xml/ns/pro/liquibase-pro-4.1.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.1.xsd\">"
                 + "    <changeSet author=\"test\" context=\"context\" dbms=\"oracle,mssql\" id=\"Test\" objectQuotingStrategy=\"LEGACY\"/>"
                 + "</databaseChangeLog>", new String(stream.toByteArray()));
  }
```

## Expected/Desired Behavior
Changelog should look like: 
 `<changeSet  dbms="oracle,mssql" ... >`


/**
     * storedChecksum is used to make the checksum of a changeset that has already been run
     * on a database available to liquibase extensions. This value might differ from the checkSum value that
     * is calculated at run time when ValidatorVisitor is being called
     */
    private CheckSum storedCheckSum;
    public enum RunStatus {
        NOT_RAN, ALREADY_RAN, RUN_AGAIN, MARK_RAN, INVALID_MD5SUM
    }
    public enum ExecType {
        EXECUTED("EXECUTED", false, true),
        FAILED("FAILED", false, false),
        SKIPPED("SKIPPED", false, false),
        RERAN("RERAN", true, true),
        MARK_RAN("MARK_RAN", false, true);
        ExecType(String value, boolean ranBefore, boolean ran) {
            this.value = value;
            this.ranBefore = ranBefore;
            this.ran = ran;
        }
        public final String value;
        public final boolean ranBefore;
        public final boolean ran;
    }
    public enum ValidationFailOption {
        HALT("HALT"),
        MARK_RAN("MARK_RAN");
        String key;
        ValidationFailOption(String key) {
            this.key = key;