[2.5] NXCM-5153: NXCM-5161: Core changes for upload resource

Refactoring and cleanup.

Issues solved (well, indirectly solves):
https://issues.sonatype.org/browse/NXCM-5153 
https://issues.sonatype.org/browse/NXCM-5161

Changes:
* doc'd how upload actually works
* cleanup: variable and their scope cleanup, formatting cleanup
* minor logging cleanup
* support for form field processing extension (in subclasses of abstract upload resource)
* and the "key change", introduction of new methods (one called once when all the coordinates of upload payload is available), to make subclasses introduce new parameters easier.

The key change is introduction of new method
`uploadGavParametersAvailable()` that is in this same
class implemented as nop. This method is called by
upload method only once, at the moment when
upload GAVP coordinates are available.

None of these changes modify functionality of upload (nor the Artifact Upload resource is changed in any way). Same thing on UI side. The new changes are used to implement NXCM-5153 and NXCM-5161 in staging plugin.