Execute recipes based off IP addresses

It adds the ability to execute recipes while passing in either a list of ip addresses or a by an EIP.

Rollback Plan
-------------
* To roll back this change, revert the merge with: `git revert -m 1 MERGE_SHA` and perform another deploy.

URLs
----
> Links to bug tickets or user stories.

QA Plan
-------
git checkout execute-by-ip
bundle install
bundle 
create a .opsicle file with some stack/app id in it, (preferably one with two instances)
run `bundle exec opsicle execute-recipes staging -r cookbook::recipe -e`
it should only run on a single one with an elastic
run `bundle exec opsicle execute-recipes staging -r COOKBOOK::RECIPE -a IPADDRESS`
it should run on the instance with that ip address
run `bundle exec opsicle execute-recipes staging -r COOKBOOK::RECIPE -a IPADDRESS1,IPADDRESS2`
it should run on both of those instances.