Describe the differences between MVVM, VIPER, and Clean Architecture, and explain when you would choose one over the other for UST delivery.