A delicious homemade ketchup, adapted from Joshua Bousel on Serious Eats
Wash the tomatoes and coarsely chop them; place them in a pot on the stove, and simmer over low heat for 45 minutes until they are cooked down. Strain the cooked tomatoes through a Foley food mill or a fine strainer. The result should be a smooth tomato-y paste.
Meanwhile, in a large saucepot, heat the olive oil over medium heat, then add the onions and saute until translucent, about 4 minutes. Add the garlic and cook for another minute. Then add the tomato mixture, brown sugar, vinegar, molasses, salt, and remaining spices. Stir thoroughly, bring to a boil, and simmer on very low heat for an additional 1/2 hour.
Remove the ketchup from the stove and process it in a blender or food processor until smooth. If the texture is still lumpy (or if seeds remain), strain it one more time through a fine-mesh strainer. Serve cold or at room temperature. Makes about 1 1/2 cups of ketchup; enough for a large dinner party or several kid lunches.