Can you explain the Model-View-Controller (MVC) design pattern and how it applies to mobile applications?