Add OnPropertyValueCondition

This commit adds a new conditional annotation that checks if a
property has a given value. This allows to replace constructs
such as

@ConditionalOnExpression("'${app.myProperty:foo}' == 'foo'")

to

@ConditionalOnPropertyValue(property="app.myProperty",
        value="foo", defaultValue=true)

Which is definitely more verbose but has the following advantages:

1. Works by default if the actual property in the environment is
   a bit different (i.e. my-property)
2. Works if the value of the property has a diferent case (BaR or
   BAR would match)
3. Gives a precise reporting in the auto configuration report

The defaultValue flag is meant to mention that the value to match
is the default value so if the property is not set, it is assumed
having the default and therefore the condition will match in such
a case; the auto-config report would also have an explicit report
about it.

Fixes gh-1000