Heat your grill to medium high.
Remove stems from tomatoes. Cut them in half lengthwise.
Cut onions into thirds. Cut against the onion's grain to make three patty like pieces.
Use some foil to make a pouch. Add garlic and 1 tbsp of oil. Fold up the foil and make a good seal.
Put Tomato halves on grill skin side down. Grill for 30 minutes or until skin is black. DON'T WORRY, they aren't burnt.
After 30 minutes push the tomatoes to the side and flip them. Don't worry if they are losing juice -- it will be OK. Put jalapeños directly above flames and add your foil pouch to the grill as well. As jalapeno skins blacken and blister turn them to roast the whole pepper. This will take 10-15 minutes.
Place everything in a bowl and head back to your kitchen. Add everything to a blender or food processor EXCEPT 1/2 of the water, 1/3 of the onion, and the cilantro! Blend away! Continue to add water until you reach desired consistency. Some people may add more than a cup of water to get a thinner consistency (like Baja Fresh).
Chop remaining onion into small pieces. Add onions and cilantro to a large bowl. Mix in the ingredients from the blender and mix well. Chill for 2 hours before serving. Great with tortilla chips or on seafood or fish tacos. Throw a lime wedge in the bowl for a good presentation.