Setup configures the environment accordingly, if the scan module has some special requirements. A successful setup
is required before a scan can be started.
Run starts scan execution. This must either be executed as a goroutine, or another thread must be active listening
on the scan's result channel, in order to avoid a deadlock situation.