[testlib] call init_config once the config has been properly bootstraped
This should be done right after repository instantiation and as such involves
giving CWTC.init_config as a callback to the test database handler (which will
itself gives it to the repository initialization function).
This unfortunatly requires to pass the init_config method to the
server.init_repository function because it has to be called after the config has
been initialized (which is done in Repository.__init__) but before the migration
handler is instantiated (which will call 'server_maintainance' hook, hence may
require the proper config). Another way to fix this would be to change the
initialization sequence, but this is another story.
Closes #3749378
[devtools] even better: use a plain Connection (server-side) object for pre_setup
The previous commit switched from passing a Session to a
ClientConnection.
This fixes unittest_ldapsource's pre_setup_database, which relied on a
server-side object to get at the repo.