add two classes for different driver creation strategies