Some of it may depend on blood type too...http://www.dadamo.com/ makes a case that each blood type has an "optimal" diet for each type of blood. I'm type A and should be more of a vegetarian than meat diet, where as a Type B should refrain from chicken and eat more venison/game type meats and greens, AB's are a combo of the two and Type O are generally meat eaters...

Beans are pretty much protiens and most people should have problems with putting weight on with them. some you need to eat other things with them to be complete proteins but soy, spirulina, hemp seed, amaranth, buckwheat, quinoa all are complete proteins by themselves but eating beans and rice (even at separate meals withing a 2 day period) will be metabolized as complete proteins