Use some more dialog providers, and a factory.

Change-Id: Ic7daa40a269ec2593dd56cc0a3a38dc5dbce1466
Reviewed-on: http://gerrit.dmdirc.com/3247
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Chris Smith <chris@dmdirc.com>