:auto mode for :file_staging_uses_destdir

The new option `:auto` for `:file_staging_uses_destdir` tries destdir when creating tempfiles first and falls back to tmpdir when unseccesful. 

/cc: @opscode/client-engineers 

Fixes https://github.com/opscode/chef/issues/2356.
We should try to preserve the error info from the exception above when we raise. Otherwise you're stuck re-running with debug and sifting through the output to get info we could have given you.