BDD Test Coverage Improvement (just 1 left!) [1/3]

This change recoveres the BDD coverage lost when we improved the annealer.

The primary change is to have the test jig "take over" roles of other jigs 
if that jigs is not active but the test jig is active.

This minor change enabled the system to run as if there was a real jig.

The only other "major" change was to turn off node.alive=false if you are testing
since the system lacks the external node to trigger alive=true.

This in turn uncovered some minor places where log messages could catch nils
that had to be protected.

I did some other very minor cleanups.


 BDD/bdd.erl                                        |    7 +++++--
 BDD/crowbar.erl                                    |    5 +++++
 BDD/features/annealer.feature                      |    2 +-
 BDD/features/snapshot.feature                      |    6 ------
 BDD/role.erl                                       |    3 ++-
 crowbar.yml                                        |    3 +++
 crowbar_framework/app/models/barclamp.rb           |    2 +-
 crowbar_framework/app/models/node.rb               |    2 ++
 crowbar_framework/app/models/node_role.rb          |    2 +-
 crowbar_framework/app/models/role.rb               |   12 ++++++++++--
 crowbar_framework/app/models/run.rb                |   14 +++++++-------
 .../db/migrate/20120801190200_scaffold_nav.rb      |    2 ++
 12 files changed, 39 insertions(+), 21 deletions(-)

Crowbar-Pull-ID: 49bb3a6e7c547e86059972236176f307d83b19a8

Crowbar-Release: development