Simplify change detection to use filename.

This mitigates bugs with multiple metadata types that are grouped into a single file. Types that share a filename have to assumed changed, but disallowing empty commits prevents runaway commit logs.
Also, add additional metadata types to application.yml - needs thorough testing but everything appears to be working correctly.