add attribute allowed_hosts; if present, client recipe will use the value specified instead of searching for an IP

This commit also adds the Gemfile.lock (it's supposed to be committed as a way of managing gem versions) and ChefSpec (a cool tool for unit-testing cookbooks), but I can remove both of those if you'd like and leave just the core change.

Copied from the [opscode ticket](http://tickets.opscode.com/browse/COOK-2460):
>My servers run the Nagios client, but the Nagios server is an external machine that is not managed by Chef and therefore can't be found via search.

>I think the best way to address this concern is add an attribute for the allowed_hosts; if the attribute is defined, then instead of searching for an IP the value provided is used. If the attribute is not defined, then previous behavior is preserved.