Added QueryAdapter interface and implementations for supported engines. The purpose of this interface is to allow query building to be normalized across database engines