There are tons of things to learn here for application developers of all sorts. I've found that working out the interaction model before polishing up the visuals usually results in a much better thought out and more usable application.
Too many designs start with how it looks and now how it works, but Nintendo's genius is to pick one interaction model, teach the user that model, and then just run with it.