fix($cancelAll): cancelAll is completely broken

TODO:
- better cancelAll unit test
- manual cancelAll tests in IE9 and older

fixes #1262
chore($build): rev build number
[skip ci]
#1262
fix($onValidate): wrong BlobData passed to onValidate
In a batch of files, the first file will include the
name and size properties passed to onValidate via a
BlobData object, but subsequent files will contain the
underlying Blob or File.  Also detected an issue where
the button is not sent for subsequent files.
fixes #1261
chore($build): rev build number
[skip ci]
fix($onProgress): name not passed to onProgress

Also fixed an issue that would invoke onProgress
in browsers that do not support the file API.  This would
result in onProgress being called once, at the end of the
upload, with -1 loaded and total values.

fixes #1255
chore($release): inc build num
#1255
chore($logging): remove log stmt in test
#1261
test(submit-validate-cancel.js): fix broken test

The removed line was never meant to be part of the test.  The button param is actually expected to be be null if a file is submitted via the API.
fix($scaling): blank size rec name prop adds to " ()" filename
fixes #1243
chore($release): inc build num
#1243
chore($slack): slack integration
fix($cancel-all): cancelAll broken for non-chunked files
...only when concurrent chunking is enabled & possible
fixes #1262
chore($build): rev build num
#1262
chore($build): prepare for 5.0.4 release
[skip ci]