Combine in large skillet ground beef, onion, garlic, salt and pepper.
Cook until beef is browned.
Return to skillet and add tomatoes, peppers or canned chilies, and beans (I prefer the Texas beans and fresh pablano pepper here because of the added flavor).
Reduce heat, cover and simmer while preparing the sauce, stirring frequently.
Prepare the sauce by mixing all ingredients in medium bowl with a wire whisk until butter has melted.
Add salt and pepper to taste.
Add about 1/2 cup sauce to meat mixture.
Turn off heat.
Dip each tortilla (the whole wheat are absolutely delicious in this recipe) into the enchilada sauce coating thoroughly.
Lay the soaked tortilla in your baking pan and add one serving spoon of the meat mixture lengthwise along one end of tortilla then roll it up from there (Note that there should be about 2 serving spoons of meat left when you are done with filling all tortillas).
When done rolling each one make sure to place it so that open end of tortilla is on the bottom to avoid spillage.
Repeat with all tortillas.
Add remaining meat mixture and remaining sauce evenly on top of enchiladas.
Cover with aluminum foil and bake 15 minutes.
Remove from oven, remove foil, cover with grated cheese and return to oven for 5 minutes uncovered, or until all cheese has melted.
For easiest serving, slice enchiladas in half lengthwise down the pan.
Serve with rice, sour cream, guacamole, and your favorite corn chips.