Added file type checking

Created functionality to allow all file types. by default an extension
is added after files that could be harmful. This extension also has a
default up ‘.upload’ but can be customized. if a blank string is passed
as the customized extension then no extra extension will be added.