I like it because the controller is much simpler, and the save code is more easily reused. In the real world I'd inject the model builder so testing would be easier too. I like that the messiness of re-filling the countries list for example is hidden inside the builder.