Added ability to execute recipes using layer_name

I'm not sure which name you'd prefer to use to identify the layer, the name or the short-name. I picked name, but I kind of think short name might be better due to it's lack of spaces. 
I feel like this should just be this:

```ruby
command_opts[:instance_ids] = determine_instance_ids(options)
```

And `#instance_ids` would turn into `#determine_instance_ids`:

```ruby
def determine_instance_ids(options)
  if options[:instance_ids]
    options[:instance_ids]
  elsif options[:layers]
    get_layer_ids(options[:layers]).map do |layer_id|
      get_instance_ids(options[:layers])[0]
    end
  end
end
```

This way, you are removing all that one-liner stuff from the `#execute` method, which is really just meant to parse options and run the recipe command (IMHO).