add configuration validation, improved logging, and preent crashing when starting without required files