Dialog to select mode instead of selecting through ListItem
Specify a ListItem for play

(it is not entirely clear if this is useful or not)
Use RunScript(...) to launch extra thread
Refactor saving of stream data into its own method