The most difficult part of starting the implementation of a Cairngorm application is that there is no clear starting point.
There are 9 points of contact that the data travels through. I'm gonna make it easy for you by suggesting that you only need to choose from one of 2 good entry points:
Option 1: Start with the user gestures are going to be. Define events.
Figure out what the views are going to need to tell the command.
Then start to identify all use gestures that requires a change to the application's data, or require that the server be contacted about the gesture, or require that another (de-coupled) view needs to be aware of the gesture. Then create cairngorm events out of these gestures.
As you go along, identify what data model the views are going to need to react to. Remember, a view component is only allowed to respond to a direct user gesture (such as a person typing text into a textbox), or a data model change. In other words, anything that happens in the application that causes a view to be updated must go through the cairngorm system of events and commands and data models. A view component may not interact with another view component (unless it's a direct parent-child relationship).
Option 2: Start with the command objects.
Figure out what the system is going to need to do as it relates to updating data, server i/o, and handling user gestures.
Figure out what the commands are going to need to be. Define command objects.