The party in the game, not including Mario, is very limited. In fact, coding the party would be very easy to do as the only thing that you would have to track is a 2 bit number for each of the members indicating the level of the character. Party Members only have three levels. Their starting level, super level and ultra level. You can have up to 8 members tagging along with Mario. You gain members as you progress through the story. While the game pretends to give you a choice about taking the member or not, the end result is always that the character joins the party.
While you may have eight members in your entourage, only one member may be with Mario at a time. Swapping out the character can be done at any time, so this isn't that big of a limitation. Each character has a special ability that can be used. These abilities are used to solve the various puzzles in the game. In fact, at the end of the game you will find yourself swapping characters constantly to get through the final chapter.
Mario, as the hero, is a bit more complicated. He has three attributes (and later gains a fourth one) that grow as he advances in levels. Heart Points are your health, Flower Power are your "magic" and Badge Points control how many special abilities you can have. Levels are gained by collecting star coins which are earned by defeating opponents. If you are a higher level than an opponent, you no longer earn star coins but still have to fight the opponent anyway. I wrote a rant about this subject earlier.