For the shrimp broth: Put the shrimp shells, carrots, celery, onions, butter, salt, bay leaf and 10 cups water in a large pot. Bring to a boil for 5 minutes. Reduce the heat and simmer, covered, for about 45 minutes, making sure to skim off and discard any impurities that rise to the top. Strain the liquid, reserving 3 cups of the broth for the okra soup. Reserve the additional broth for another use.
For the okra soup: Heat a large gumbo pot or Dutch oven over medium-high heat, add the olive oil, garlic, onions, green peppers and 1 tablespoon of the butter and saute until the vegetables soften. Next, add the corn, lima beans and Roma tomatoes and mix together. Add the canned diced tomatoes and reserved 3 cups shrimp broth, stir, cover, bring to a simmer and cook for about 20 minutes.
While the soup is simmering, melt the remaining tablespoon of butter in a medium skillet, add the reserved shrimp and season with salt and pepper. Cook until the shrimp begin to turn pink. Add the okra, ground ginger and lemon juice, stir to mix and then cook until the okra and shrimp are cooked through.
Once the soup has simmered for 20 minutes, add the shrimp and okra mixture to the soup. Cover and cook for an additional 10 minutes. Stir the soup, then serve over rice (or enjoy it without rice).