Extract Configuration Validation from JsonConfiguration

Closes #31