Fix DIZ extraction/use for FTP uploads

1. Was not setting f->dir to the correct directory number, so only ftp-uploads to the *first* directory (dirnum = 0) would extract DIZ files of uploaded files.

Removing the 'dirnum' parameter to addfile() since that implied that you did not have to initialize the 'dir' element of the passed file_t, but you do: to get the correct file path for file size/date detection and the DIZ extraction.

2. Was getting heap-corruption when freeing the imported/formatted DIZ text on Windows once the above problem was fixed: can't free() in one DLL memory that was allocated in another DLL. Created and now using free_diz() to free the memory allocated in read_diz().

format_diz() handles a NULL 'lines' argument correctly/gracefully, so no need for the NULL lines check in sbbs_t::uploadfile().

Added FTP server log messages for successful file upload or update by user.
14 jobs for master in 9 minutes and 44 seconds (queued for 11 seconds)
Status Name Job ID Coverage
  Build
passed jsdoor-freebsd #34997
FreeBSD

00:03:57

passed jsdoor-linux #34998
Linux

00:06:28

passed jsdoor-windows #35000
FreeBSD

00:01:54

passed sbbs-freebsd #34992
FreeBSD

00:05:25

passed sbbs-linux #34987
Linux

00:09:40

passed sbbs-windows #34990
Windows

00:05:13

passed sexpots-freebsd #34999
FreeBSD

00:00:12

passed sexpots-linux #34988
Linux

00:00:26

passed sexpots-windows #34991
Windows

00:00:27

passed syncdraw-freebsd #34995
FreeBSD

00:00:27

passed syncdraw-linux #34996
Linux

00:01:04

passed syncterm-freebsd #34993
FreeBSD

00:01:06

passed syncterm-linux #34989
Linux

00:02:56

passed syncterm-windows #34994
FreeBSD

00:01:48