resolve #68 [rt.cpan.org #54055] - read from arbitrary handle

pass in client_handle in a config hash to the constructor. patch
applied from the original RT ticket. TODO: add tests and amend the
perldoc to show this is possible
bump version numbers for dev release 4.03_01

if all is well on cpantesters then will go out as 4.04, this will
be a dev release for a couple of weeks to make sure cpantesters
gets out to enough platforms to make test coverage significant
disable e-mails from travis
tabs to spaces in .travis.yml (mixing is bad)
fix broken tmp directories (empty values) on Win32

w/r/t cb434b3b27897e2a486c930f144bba60216caa22 it would appear this
change isn't quite what we want as cpantesters is showing failures
for all (so far) Win32 platforms on the following tests:

	t/upload.t
	t/uploadInfo.t

both tests show the following warnings/errors:

	Use of uninitialized value $tmp in concatenation (.) or string at (eval 7) line 71.
	CGI.pm open of tmpfile /goodbye_world.txt failed: No such file or directory

so it is clear that the temp directory is not being set correctly.
given the change in cb434b3b27897e2a486c930f144bba60216caa22 was
to re-order the directories it probably makes sense to also check
that the directory is sensible by changing the defined check to a
simple boolean check to weed out temp directories set to '' or 0
or the null char[1]. if you're setting the temp dir to any of these
then you are doing something wrong because your temp files are
likely to end up in the root of your partition.

if this doesn't fix the tests on cpantests then i'm going to have
to get hold of a Win32 dev VM to debug this

bump version to next dev release

[1] even with these i'm puzzled by the failures given we do a check
for -d and -w on the final value of the tmp directory before using it
refactor CGITempFile::find_tempdir to use File::Spec

File::Spec has a tmpdir function that is platform independent so we
can replace the pre-re-invented wheel here with another solution.
File::Spec is core and is already required in the Makefile.PL so
there is no change there

related: #91 [rt.cpan.org #71799] - really you should care about
the internals of where temp files are stored, so i'm taking the
decision to abstract this away to something cleaner
resolve #109 [rt.cpan.org #81935] - change distname

from CGI.pm to CGI - this will allow various CPAN tools to query
the dist without having exceptions for CGI.
bump version to 4.03_03 and make consistent

CGI::Cookie had it's own version for some reason, make it the same
as the rest of the dist
bump VERSION to 4.04, update Changes and push release

have tested 4.03_03 on a Win32 VM using strawberry perl and tests
pass so am happy to push this release out. will keep an eye on the
cpantesters site for any regressions (none so far with 4.03_03)
AUTHOR INFORMATION becomes LICENSE in pod

to please Kwalitee: http://cpants.cpanauthors.org/dist/CGI
Merge branch 'master' into rt/54055
test for #68 [rt.cpan.org #54055] arbitrary handle

it seems the path provided is not required, CGI already supports
arbitrary file handles as the first argument to the constructor so
the previously applied patch will be reverted. add this detail to
the Changes file and perltidy Makefile.PL - also add all modules
used to Makefile.PL
Revert "resolve #68 [rt.cpan.org #54055] - read from arbitrary handle"

This reverts commit 1d2b173c3f036ea7eafbee47b672deb1387798f1.
see efd262e83ee89da85bda89dc2db931eaa841210a for rational
add t/arbitrary_handles.t to MANIFEST
ref #143 - error checking in temp file removal

check return value from call to unlink and warn if it fails - also
check the file exists before trying to remove it because it may not
exist in the first place
resolve #74 [rt.cpan.org #57524] - check FH layers

before we set binmode on STDOUT/STDERR/STDIN check the layers that
exist on them and if there are any none defaults then *don't* set
binmode as that will wipe out the existing modes. add test for this
which means we need to wrap the setting in a subroutine so can test
it outside the OS's affected since the alternative is faffing about
with $^O
ref #74 - Changes entry for previous commit
ref #75 [rt.cpan.org #61120) - check redirects

do not have their characters-that-should-not-be-unescaped unescaped
Merge branch 'master' into rt/51021