Add ability to send log output to a file

Using PACKER_LOG=1 causes all the log output to be sent to Stderr. This
change maintains that backward compatility. Anything other than "1" will
be treated as a filename which will have logging appended to that file.
This is useful, for example, to always have debugging available without
cluttering up stdout (and without having to redirect stderr all the time).
Add support for -force flag on builds [GH-119]
Add instructions for how to get Go set up to contribute.
Merge pull request #173 from jasonberanek/force-build

packer, builder/*: Add support for -force flag on builds [GH-119]
Update CHANGELOG
fmt
Merge pull request #176 from smerrill/better-contributor-notes

Add instructions on how to get Go set up to contribute.
Remove output directory in a step when "-force" flag step [GH-178]
Merge pull request #179 from jasonberanek/force-build

builder/virtualbox, vmware: Remove output directory in a step when "-force" flag step [GH-178]
buidler/virtualbox,vmware: only stat if not force

/cc @jasonberanek - Swapped this because why even bother doing a stat
if we're forcing anyways.
Add PACKER_LOG_PATH for logging to a file

When the environment variables PACKER_LOG and PACKER_LOG_PATH are both
set the log output will be appended to the PACKER_LOG_PATH file.
Unused keys are invalid in templates [GH-104]
Error if unknown root level key in template [GH-180]
Merge pull request #168 from markpeek/markpeek-filelogging

Add ability to send log output to a file using PACKER_LOG_PATH
Clean up some of the log path detection code

/cc @markpeek I think this is much cleaner. Also, I made it so it
doesn't append by default... I like the idea of appending but it scares
me that for a bug report someone might put like a multi-megabyte gist of
logs at me. HAHA. We'll see.
website: add PACKER_LOG_PATH docs
Move AWS auth decisions to goamz [GH-160]

Currently the passed in AWS auth or AWS environment variables are
interpreted by packer. This change moves that logic into goamz in
order to support both the existing and instance based IAM role
authentication. This requires a corresponding change to goamz.
Update CHANGELOG
builder/virtualbox: support generic hash types [GH-175]
builder/vmware: generic checksum types [GH-175]