Preheat grill or side burner. Heat oil in a medium saucepan over medium heat. Add shallots and garlic and cook until soft, about 4 to 5 minutes. Add vinegar and reduce by half. Add remaining ingredients, stir and bring to a boil. Reduce heat and simmer for 20 minutes. Transfer mixture to blender and blend until smooth. Return mixture to a clean saucepan and cook for 15 to 20 minutes or until thickened. Season with salt and pepper. Let cool to room temperature.