Hi Jana,
Thanks for the interest in our EDD Ticketing Addon. See my answers below.
Is it possible to add optional extras to a booking? For example, the user books into a yoga retreat weekend, and optional extras to select with the booking might be to upgrade to a single room or to book a massage? Could this all be done from the one ticket?
Our ticketing solutions all have the same features, so this goes for all, but it does not have the features you describe. It creates tickets to sell from events and a place to check Attendees in. I can see how you could add fields and related products through EDD to achieve what you are looking for, but it would require customization with php knowledge and that is beyond for the most part the support we can provide on the forum.
We have this demo for WooCommerce Tickets, it would be a similar process to EDD:
http://wpshindig.com/event/the-events-calendar-wootickets-wordpress-demo/
Let me know if you have any followup questions.
Thanks