MDS Driver pool redesign

The MDS drivers need to manage the pool internally to upper layers ads need to use the unique driver instance. In fact all method are made reentrant, so it can be done. MDS need to be update to do this. in addition all driver need to be a test functionality that ads need to use at init time to test if the backend are functional, in case it need to not start.

Edited by Claudio Bisegni