Added universal downloader + src gen trigger

Each src gen's srctype attr corresponds to a 'key' in gen2.js's
config.template object. Note that for better error handling a new
'srctype' needs to be registered with the server side as well apart
from being in the gen2.js