Update External Storage

There are a few changes in here, was easier to send in one pull.

Added viper, vxcage and cuckoo API details to the config file.
Changed viper and vxcage to use the response data instead of file.
If using viper or vxcage dont store file on disk.
Viper and VxCage also get  'Maltrieve' and Src Host as 'Tags' when storing.

Submit the url to cuckoo instead of the file - Cuckoo prefers files with extensions or web pages as urls. 

Added white list by mime to complement the existing blacklist

Moved some of the functions around slightly.