Extracted task class, added it to group and simplified task name
Renamed configuration parameters to remove duplication and changed logging
Propagate common fields (to avoid duplication) and some validation before upload
Revert gradle.build changes