Introduce Property interface to eventually replace use of Guava's Supplier in a public API.
Change all ConfigurationProvider's to extend DefaultConfigurationProvider