Overlord - Iteration 2

In this second iteration, I made all of the changes suggested in the first iteration, except changing the case statement in `bomb.rb`. After discussing it with Joe, he said it was okay for this implementation.

Below are the main changes I made in this iteration:

1. Create another feature spec: deactivate_bomb.feature.

2. Add descriptions to Feature files.

3. Make methods private in `bomb.rb` that aren't used outside the class.

4. Condensed many of the specs in my Feature files to read better; in the process I moved the detailed steps of many Givens, Whens, and Thens to `add_task_steps.rb`.

5. Reorganized `add_task_steps.rb` to place Givens, Whens, and Thens in order.

6. I improved the logic (I think!) of determining whether to use the user supplied codes or to use the default codes with the following methods: `#valid_code' and `#initialize`.

7. Added a Feature to check that the bomb is unusable after it explodes.

Thanks!
consider using partials when you render the erb's. I'll elaborate in the erb files itself, but you could have one file called index.erb, and do

    erb :bomb, layout: index, locals: { bomb_state: bomb.status }