Delay evaluation of guard_interpreter

We currently evaluate guard_interpreter on the parent resource immediately when evaluating a conditional during compilation. This is an issue if you happen to put your guard_interpreter after your conditional in your recipe. But, we don't actual execute the conditional until later during compilation Chef::Resource #run_action -> #should_skip? -> Chef::Resource::Conditional#continue?. This moves the evaluation of the guard_interpreter attribute to #continue?.

Fixes #1943
Also, we already test that it defaults to `:default` in the Chef::Resource unit test. We could duplicate that here at the higher level of a functional test but the value probably isn't huge.