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>
When I move Get-ChocolateyTempDir and Get-TempDir to src/helpers/functions, may I then keep the references to them in the other helper functions, such as Install-ChocolateyPackage.ps1?