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

## Environment
**Liquibase Version**: 3.10

**Database Vendor & Version**: any

**Operating System Type & Version**: any

## Description
Create a custom change with a params list where there is no "name", it will trigger a NullPointerException instead of a nicer validation error explaining the problem.

## Steps To Reproduce
A changelog file with the following customChange:

```
     - customChange:
         class: com.company.customchanges.AddAttribute
         param:
           fieldType: '12'
           mandatory: '1'
           labelKey: userAttribute.firstName
           maxLength: '50'
           index: '2'
           newline: '1'
           readOnly: '1'
           visible: '1'
```

which **was generated by the Liquibase YamlChangelogSerializer!!** (which is a separate issue)
trriggered a NullPointerException.

## Actual Behavior
A NullPointerException without a message.

## Expected/Desired Behavior
A clearer validation error should be thrown indicating the cause of the problem.


@DatabaseChangeProperty(isChangeProperty = false)
    public CustomChange getCustomChange() {
        return customChange;
    }
    /**
     * Specify the name of the class to use as the CustomChange and assigns it to {@link #getCustomChange()}.
     */
    public CustomChangeWrapper setClass(String className) throws CustomChangeException {
        if (className == null) {
            return this;
        }
        this.className = className;
            try {
                try {
                    customChange = (CustomChange) Class.forName(className, true, Scope.getCurrentScope().getClassLoader()).getConstructor().newInstance();
                } catch (ClassCastException e) { 
                    try {
                        customChange = (CustomChange) Thread.currentThread().getContextClassLoader().loadClass(className).getConstructor().newInstance();
                    } catch (ClassNotFoundException e1) {
                        customChange = (CustomChange) Class.forName(className).getConstructor().newInstance();
                    }
                }
        } catch (Exception e) {
            throw new CustomChangeException(e);
        }
        return this;
    }
    /**
     * Returns the name of the custom class set in {@link #setClass(String)}
     */