Allowing a file to be given as initial state for uploader.

Many improvements were made to the component:

- A initial message is displayed when it has no file selected
- You can upload the same file again, after some error or when it has finished uploading.
- The URL of the file, as returned by the service is set on the link to download.
- The link to download is enabled only when an existing file is set or when a file finishes uploading.
- A title is shown when hovering the progress.
- The bar is shown with stripes when uploading.
- The progress and percentage are displayed only when uploading a file.
- UploaderController will copy the uploaded file to public/system/uploads, so that the file can be downloaded properly.
- The link to download a file will open it in a new tab.
Properly passing pusher api key and channel, as well as generating the security token
Displaying a full filled bar whenever an error occurs
Binding to pusher events when upload is started in order to work even with small files
Generating a unique pusher channel when it is not given
Disabling upload button when uploading a file
Updating icons used by uploader
Displaying a tooltip when hovering abort/remove button
Aborting and removing uploaded files
Adjusting uploader component to work in IE8-9