blkdev: make SCSI IOCTL and/or SCSI SPTI optional and other changes

The main purpose of this patch is to allow integrating the Linux SCSI IOCTL code into blkdev. devicefunc_win32_ioctl is renamed to devicefunc_scsi_ioctl, prototypes are moved to blkdev.h. Iterating over the blkdevice functions has been changed to account for either of them missing.

I have already added  the following defines to od-win32/sysconfig.h:
#define WITH_SCSI_IOCTL
#define WITH_SCSI_SPTI
and also renamed devicefunc_win32_* in od-win32, so hopefully the patch should apply and compile cleanly on WinUAE.

(There's a couple of logging fixes and a const fix too).