Add directory checks.
Implement directory check.
Add defaults value support.
Add exception for unexpected variables when trying to set defaults.