Config flexibility

This is PR 3 of 3 in a series of cookbook enhancements we would like to push upstream.  Hopefully you will find the changes acceptable.  All of the changes in this set of PRs should maintain backwards compatibility.  We have additional patches we would like to contribute, but they depend on the changes made in the current set of PRs.

This PR makes config files optional on a per-config basis.  The default attributes are set to match existing behavior.  Additionally, this PR allows the data bag configs to be set either by data bag or attributes.  Finally, it also fixes the public_ip attribute.