Add a filesystem watcher that can be used to inform listeners of
changes (add, delete, modify) to files in specific source folders.
The implementation uses a background thread rather than the WatchService
API to remain compatible with Java 6 and because WatchService is slow on
OSX.
See gh-3084
Add auto-configuration to automatically apply properties that make
sense during application development. Currently the single property
`spring.thymeleaf.cache` is set to `false`.
Closes gh-3083