Let aws.cmd find python.exe on paths with spaces.

Before this commit, you'd get a vague "\Python\python.exe was unexpected at this time." message
when Python is installed in "C:\Program Files (x86)\Python". This fix always surrounds the
PythonExe variable's value with quotes so `if [%PythonExe%]==[""]` doesn't break.
Add validation to ensure we don't mv a file onto itself

Fixes #831
Update changelog with bugfix
Fixes issue #834

Rewrite wait_for_upload_id function so UploadCancelledError is raised
when state is _CANCELLED, previous logic didn't raise UploadCancelledError
if upload_id was set.
Added test_cancel_after_upload_id to test_tasks

This test creates an upload_task, sets the upload_id, and then cancels the upload.

At this point any call to wait_for_upload_id must raise an UploadCancelledError,
even if a valid upload_id is set on the MultipartUploadContext object.
Merge branch 's3-mv-same' into develop

* s3-mv-same:
  Update changelog with bugfix
  Add validation to ensure we don't mv a file onto itself
Fix changelog entry for merge of #831

This is not in the 1.3.21 release, it will be part
of the next release.
Merge branch 'jlopex-cancel_pending_tasks' into develop

* jlopex-cancel_pending_tasks:
  Added test_cancel_after_upload_id to test_tasks
  Fixes issue #834
Add changelog entry for #834
Merge branch 'joeyespo-develop' into develop

* joeyespo-develop:
  Let aws.cmd find python.exe on paths with spaces.
Update changelog with #825