Added new file upload preview

* Generic callback handler for uploads to allow different upload types
* Image preview when uploading an image
* Filename preview when uploading a non-image
* Cancel button added to upload