In a large bowl, mix together the diced onion, juice of 2 limes, and kosher salt. Let stand at room temperature for 10 to 20 minutes (this will soften the bite of the onion).
In a large pot with a steamer insert add about 2 inches of water. Add the corn and steam until just cooked through, about 5 to 8 minutes. Then shock the corn in cold water until cool to the touch. With a paring knife, carefully shave off the niblets onto a cutting board. A good way to do this is to slice off about 1/2-inch of the end of the corn cob. Hold the cob upright with the flat end on the board and shave with knife tip pointed downward at 4 o'clock. Don't cut into the cob. Tweeze and pick through the kernels with fingers, pulling out wayward strands of corn silk. While nothing beats fresh corn for this recipe (and this is a lot easier than it sounds) a close second is a good quality frozen corn. NEVER USE CANNED CORN!
Pour the tomatoes into a colander over the sink, and with your hands squeeze out the liquid without overly squishing them. Loosely chop the tomatoes into 1/2-inch chunks.
Toss the corn, tomatoes, black beans, green pepper, cilantro, cumin, and habanero into the bowl with the marinated onions. Taste and add more lime juice, salt, cumin, hot pepper or even more cilantro, if needed.
I prefer to mince the hot peppers with seeds. Clearly this makes for a lot more heat. It's best to add it to the salsa a little bit at a time to get to desired heat, which is important. You can always add more heat but you can't take it away. This makes a great appetizer to serve with my guacamole and tortilla chips. It also makes a great side dish (serves as both veggie and starch) with a Mexican-style meat, fish and/or poultry. As a side dish it will easily serve 6 to 8 people. It will keep in refrigerator for 3 days for leftovers, but best when made the day of serving.