Set up logging, added DriverBased trait and Factory trait, placeholders for packages