chore: Being work on next release.

The cycle continues...

[ci skip]
fix(client/js/uploader.basic.api.js): fixes #998

Workaround for Android 2.3.x issue where the change
event handler is triggered by the browser even if
no file has been selected.
feat(*):#867 - start of templating rewrite

Completed:
    - Moved template HTML out of js file
    - File/module to handle template-related tasks
    - All UI-related features should still work

TODO:
    - try to avoid setting style attributes in js
    - don't blow up if a template element is omitted
    - caching to avoid frequent re-selections
    - comments in code
    - comments in default template file
    - ensure default template file is included with dist zip
    - unit tests
    - update docs
    - fall back to core mode if template doesn't exist
feat(*):#867 - fix overridden button case
feat(*):#867 - fix disable default dropzone case
feature($custombuild): Generates custom JS build via Grunt task

You can generate a custom build by running the grunt task:

% grunt build:custom [args]

Where args is zero-to-many of:
--traditional
--ui
--jquery
--s3
--modules [mods]

Where mods is a comma-separated list of potential modules:
* paste
* delete
* deleteui
* edit
* all

piece of: #846
feat(*):#867 - allow template items to be omitted

Except for:
    - qq-uploader-selector
    - qq-upload-list-selector
    - immediate child of qq-upload-list-selector

[skip ci]
chore(test/uploader-demo-jquery.coffee): remove listElement option from manual test file
feat(*): #867 - stop applying style attrs in js

Except for DnD module

[skip ci] - still need to fix unit tests
feat(*): #867 - stop applying style attrs in js

Forgot about drop processing graphic

[skip ci] - still need to fix unit tests
feat(*): #867 - make progress bar more flexible

[skip ci] - still need to fix unit tests
feat(Gruntfile): Output the custombuild directory post-build
feat(*): #867 - fix delete/retry visibility

[skip ci] - still need to fix unit tests
feat(Gruntfile): Better output for regex capture for custom build
feat(client/js/templating.js): #867 - descriptive error if tempalte can't be loaded
docs(*): missing information in getUploads method documentation
docs(*): missing information in getUploads method documentation [skip ci]
fix(test.html): Fix incorrect source paths for test.html page

You can test with Mocha and the test.html page by running the
command:

```
grunt connect:root_server
```

This starts a server on port 9000 which you can access to visually
investigate mocha tests.

The URL: http://localhost:9000/test/test.html
fix(test/unit/iframe.xss.response.js): Pathfix for non-Karma runs
test(*): #867 - unit tests should be passing again

TODO: Make these tests better and write new ones