1) Heat the oil in a frying pan over medium-high heat. Add onions and cook until they soften, about 3 minutes. Stir in the garlic and cook for 2 minutes more.
2) Put half of the onion mixture into a food processor with the black beans, chipotle pepper, 2 tbsps of the lime juice, cumin, water and salt. Puree until smooth. Set aside.
3) Add the corn to the pan with the remaining onion mixture and cook for about 3 minutes. Remove from the heat and stir in the coriander leaves.
4) In a small bowl mash the avocado with the remaining lime juice. In a medium bowl toss together the tomatoes, spring onions and jalapeno, if using. Season tomato mixture with salt and pepper, to taste.
5) Spread the black bean dip into the bottom of an 20cm by 20cm glass baking or serving dish. Top with the corn mixture, spreading it out to form a single layer over the beans, repeat with the avocado, then the tomatoes. Top with cheese.