After various discussions, the current thoughts (but open to further discussion) for how activity creation are:
User activates a control (probably a button similar to 'new track') to create a new activity. This activates a side panel for creating/editing activities. The activity does not yet exist in the internal models.
User chooses an activity type from all available types.
User activates a control to add a track to the activity. Track selection may be limited by the selected activity type (probably this is a future feature not implemented initially).
Initially, the entire track participates in the activity. It is only at this point that the activity is saved to the internal models. (Otherwise, certain actions such as selecting a different activity cancel activity creation with no changes made.)
Once a track is added, the user may change the start/end times of that track's participation.
Depending on the activity type, the user may be allowed to add additional tracks. (Again, this may be reserved for a future feature, and just always allowed initially.)
After various discussions, the current thoughts (but open to further discussion) for how activity creation are: