refactored MediaUploader; updated tests
added composer vendor dir to .gitignore
added uploader options; 'allowEmpty' setting is now deprecated