Use node specific roles if node config isn't present

A common usage pattern is for node configurations to contain just one entry in
the run list: role[node-foo] (where foo is the node name). This change lets
you skip that step, and if run_chef doesn't find a node configuration file,
then it will manually set the run list to the node specific role using the -o
option to chef solo. The -o option was introduced in chef 0.10.10, so if
you're running an earlier version of chef, then node json files are still
required.