Make the temp directory configurable

Enable users to specify an alternate temp directory in the chocolatey configuration.
If <tempDir> is not present, then $env:TEMP is used as a default.

This enables companies with IT policies that prevent executing files
in the %TEMP% directory to continue to use Chocolatey (see discussion at https://groups.google.com/forum/#!topic/chocolatey/V8aU7VnB5eM)

Sample Configuration File with value specified:

    <?xml version="1.0"?>
    <chocolatey>

        <tempDir>%ProgramData%\Chocolatey\Temp</tempDir>
    
        <useNuGetForSources>false</useNuGetForSources>
        <checksumFiles>true</checksumFiles>
        <virusCheck>false</virusCheck>
        <sources>
            <source id="chocolatey" value="https://chocolatey.org/api/v2/" />
        </sources>
    </chocolatey>
This would probably be better if packages could take advantage of it. This and Get-TempDir.ps1 should be in src/helpers/functions and Get-ChocolateyTempDir.ps1 could be exposed for use.