Asynchronous Files Upload Module (manual merge) - fixes #78