Getting started on testers

Any advice for what might be the best way to represent a Pokemon (like:
lists, arrays, etc)? Basically, what data structure is the easiest to
"switch"? (If I wanted to switch the elements in the first and second
slot so the second is now in the first slot and the first is now in the
second slot, what would be the best representation?)

I'm also trying to figure out if my World should be represented by
Trainers or not.