Add a factory for servers.

This hides most of the dependencies from the ServerManager.

Change-Id: I18e416a99244ad42ae35b30409aeb92f2c7454f4
Reviewed-on: http://gerrit.dmdirc.com/2892
Reviewed-by: Greg Holmes <greg@dmdirc.com>
Automatic-Compile: DMDirc Build Manager