[FEATURE] Add ExtensionVersion API

A new API class "ExtensionVersion" deals with a specific uploaded
version of an extension.

This class is responsible for checking sanitized versions, and serves
as entrypoint to hide the logic behind "tx_ter_extensions" (and soon "tx_ter_extensiondetails"), by also handling deletion, updating reviewstate
or uploading of new extension versions.

On top, all TYPO3_DB calls are removed from EXT:ter with this change, moving
more actual logic out of the SOAP API endpoints.

In addition, the non-SOAP-API is now using non-static calls, as all
logic is wrapped in a doUpload() method.
5 jobs for feature/ExtensionVersionAPI in 52 seconds (queued for 2 seconds)
Status Name Job ID Coverage
  Test
failed test:php #20230

00:00:33

passed test:typoscript #20229

00:00:52

passed test:unit #20231

00:00:42

 
  Build
skipped build #20232
 
  Layout
skipped layout #20233
 
Name Stage Failure
failed
test:php Test
     }
}


----------- end diff -----------


Checked all files in 1.862 seconds, 14.000 MB memory used
ERROR: Job failed: exit code 8