adds initial support for exporting reports to a remote SFTP server.
cleans up (some of) and documents the code using both manual and automated tools.
adds property type declarations (a feature new to PHP 7.4) thus removing support for PHP 7.3. For this reason the PR is being merged into a new branch instead of master, to prevent users relying on master from breaking their install. This is likely a common scenario because the last git tag made before today was in 2017, so most users have either forked the extension or relied on master.
adds a few unit tests, but the coverage is already quite high thanks to recent contributions by DWS.
This PR: