In a large heavy bottomed pot or Dutch oven, heat ¼ cup of the olive oil over medium to medium high heat and brown all meat in three batches. Each batch should take about 3-4 minutes on each side. Do not crowd pan. As each batch is browned on both sides, remove to a platter.
Next fry the meatballs on all sides and set aside.
Add the remaining olive oil to the pan drippings and add onions, garlic, half of mint, half of basil and half of the red pepper flakes. Cook about three minutes or until onions are transparent scraping up all brown bits from the bottom.
Add tomato paste and stir to combine. Add canned tomatoes and the water. Add salt and pepper and stir. Stir in the other half of the mint, basil and pepper flakes and place the pot over a heat diffuser.
Add the cooked meat back in along with any juices collected from the platter and stir into the sauce.
Gently place the meatballs over the top, spooning a little gravy over them and gently push them into the gravy.
Get the heat to a medium simmer, cover and cook for one hour, occasionally making sure nothing sticks to the bottom with a large wooden spoon.
After an hour, spoon out the meatballs and cook the gravy for an additional hour uncovered.
After the full two hours, collect the fat that pools at the top and discard. Or chill the mixture overnight (better the next day) and pick off the fat that congeals at the top. Just before the meat is fully cooked, add the meatballs back in. Easier to spoon the fat off the top before placing the meatballs back in.