Configurable temp dir via "PACKER_TMP" environment variable [GH-398]

**Addresses:** GH-398

**Description:**

Change references of `"ioutil.TempDir()"` to use `"os.Getenv("PACKER_TMP")"`.  Also updated the assignment of `"env.cache"` in `"packer/environment.go"` for consistency.

I found the files to edit with: `"grep -Ir TempDir * | grep -v _test.go"`

**Testing Done:**

Mostly visual.  `make` and `make test` still work...