3-4 tablespoons bacon fat (you could sub olive oil if you have to)
1 large onion
First, cook the beans. The best way is to soak them overnight in plenty of water, then simmer for 45 minutes or so until done. A pressure cooker can do the job in about 15 minutes, if you have one. Drain them once they're done.
Chop the onion as small as you can - 1/4 inch pieces are best.
Warm a big cast-iron skillet over medium heat. Put in the fat or oil - you should have a good thick coating. Add the onions, and lower the heat to medium-low. Sprinkle with salt. Cook the onions until soft and translucent or slightly browned. The longer you cook them and the lower the heat, the more caramelized and delicious they will get.
When the onions are good and soft, add the beans. Stir it all together, and let stew on low heat for a while, stirring occasionally. You may want to add some more fat - it's really worth it to have it be good and bacony. I recommend adding as much as you can handle.
When the beans are getting mushy and starting to fall apart, you're done! These are great in burritos and tacos, and also make a good side dish. Enjoy!