I see you tagged this as both civimember and civivolunteer. I don't think that either Component would be required based on your initial description.
You could also conceive as a specific trail as an 'event' and hence anyone who signs up for that trail gets attached to the event. Then you can track if they participate, reject, drop out etc by different 'participant types' on the event. It seems like a reasonable match.
From your description the remaining areas should be able to be managed via custom fields on the Contact alongside custom fields on Activities. If you are using Drupal then you can use webforms to make the UI easier for everyone.
Happy to discuss further offline if you want more of a walk-through on how this might work