Some rules that I didn't apply when making the roster to give more freedom in choices:
1. Region-exclusives
2. Not allowing other characters that didn't appear on Nintendo consoles.
3. Not allowing non-videogame characters. (Goku is the only exception)
Some things that came to mind when I was making the roster:
1. Character rivalries. (Agumon vs. Pikachu vs. Jibanyan or Akira vs. Ryu vs. Heihachi)
2. Bringing in as many big third-party icons as possible.
3. Bringing in as many third-party characters that have a notably close relationship with Nintendo as possible. (Layton, Phoenix Wright, Scribblenauts, Cave Story)
4. Bringing back every veteran in the game.
5. Adding Nintendo characters whose game was critically praised by many. (Wonderful 101, Elite Beat Agents, Fire Emblem Fates)
6. Adding many very popular characters from established franchises whose importance in the main series is large and consistent. (Toad, Bandanna Dee, Meowth) (No spin-off characters like Waluigi or Daisy)
7. Completely filling in representation that match the success of the established franchise or represent the whole entity of the franchise. (Ninten, Ness, Lucas representing the whole Mother trilogy; Diddy, DK, Dixie, Cranky, K. Rool filling in the whole cast of DKC; Fox, Falco, Slippy Toad, Peppy, Wolf representing the whole Star Fox crew)
8. Historical importance. (Jumpman and Hanafuda character)
9. System representation. (Virtual Boy with Harry the Teleroboxer, DS with many of the Touch generation franchises like Brain Age, Nintendogs, Big Brain Academy, Gameboy with Prince Sable and Muddy Mole)
10. Adding in as many classic (retro) Nintendo characters as possible. (Balloon Fighter, Donbe and Hikari, Takamaru)
11. Representing each Pokemon generation. (Yeah I know. :L)
12. Adding as many popular Nintendo franchises as possible. (Pilotwings, Splatoon, Rhythm Heaven, Brain Age, Nintendogs)
Hope that clears things up.