Soak beans overnight, or cover with water 2" above the level of the beans, bring to a boil, turn off the heat and soak for one hour.
In a heavy frypan, saute the onion in the lard or oil until translucent. Add the chopped garlic and stir briefly. Bloom the spices by stirring the cumin, oregano, allspice and chile into the onion mixture.
Drain the beans and pour them into a heavy bottom pot. Add the onion mixture, black pepper, bay leaves, carrot and aromatics bundle. Stir. Add enough water to cover the beans with water about 1/2" over them. Bring to a boil, turn down the heat and simmer.
After a half hour of cooking, add the beer and the salt, and enough water so that the beans stay submerged.
Continue to monitor the water level and stir occasionally, adding enough water to just keep the beans submerged. Cook until the beans are very tender. The amount of time that takes depends on the age of the beans, but plan on allowing them to cook for two hours or more. The longer they cook, the better they taste.
Before serving, mash some of the beans in the pot with a spoon or a potato masher to thicken the liquid, if desired.