## Environment
**Liquibase Version**: org.liquibase:liquibase-core:jar:3.8.9

**Liquibase Integration & Version**: maven

**Database Vendor & Version**: postgres 11

**Operating System Type & Version**: ubuntu (wsl)

## Description
PrimaryKey constraint does not honor 'deferrable' and 'initiallyDeferred' settings so that created primary key is not 'deferred'

## Steps To Reproduce
Use script:

```
<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.0.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.0.xsd">
    <changeSet author="author" id="some-id">  
        <createTable tableName="abc">
            <column name="id" type="INTEGER">
                <constraints nullable="false" primaryKey="true" primaryKeyName="abc_PK" deferrable="true" initiallyDeferred="true"/>
            </column>
        </createTable>
    </changeSet>
</databaseChangeLog>
```

## Actual Behavior
2020-12-18 09:01:19.936 [main] INFO  liquibase.executor.jvm.JdbcExecutor - CREATE TABLE public.abc (id INTEGER NOT NULL, CONSTRAINT "abc_PK" PRIMARY KEY (id))

## Expected/Desired Behavior
PRIMARY KEY is created with _deferrable initially deferred_


}
        for (ColumnConfig column : getColumns()) {
            String columnRemarks = StringUtil.trimToNull(column.getRemarks());
            if (columnRemarks != null) {
                SetColumnRemarksStatement remarksStatement = new SetColumnRemarksStatement(catalogName, schemaName, tableName, column.getName(), columnRemarks, column.getType());
                if (!(database instanceof MySQLDatabase) && SqlGeneratorFactory.getInstance().supports(remarksStatement, database)) {
                    statements.add(remarksStatement);
                }
            }
        }
        return statements.toArray(new SqlStatement[statements.size()]);
    }
    protected CreateTableStatement generateCreateTableStatement() {
        return new CreateTableStatement(getCatalogName(), getSchemaName(), getTableName(), getRemarks());
    }
    @Override
    protected Change[] createInverses() {
        DropTableChange inverse = new DropTableChange();
        inverse.setCatalogName(getCatalogName());
        inverse.setSchemaName(getSchemaName());
        inverse.setTableName(getTableName());
        return new Change[]{
                inverse
        };
    }
    @Override
    public ChangeStatus checkStatus(Database database) {
        try {
            Table example = (Table) new Table().setName(getTableName()).setSchema(getCatalogName(), getSchemaName());
            ChangeStatus status = new ChangeStatus();