Define version-sensitive attributes in a recipe

This allows the postgresql cookbook to continue working after default
attributes are used to set the postgresql version. The postgresql
version is used to create many other attributes containing that version
number.

By defining these version-sensitive attributes in a recipe, they can
safely be defined knowing that all attributes files have already been
loaded and that node[:postgresql][:version] has its final value.

Otherwise, setting a default postgresql version in an attribute file
outside the cookbook has no coherent effect.