Mvvm and samples changed

Mvvm has had major enhancements, including:

1. Abstracting it to use Interfaces instead of Xamarin Page etc
2. Adding services which can be replaces by the user, including NavigationService, ViewFactory.
3. Changes samples to use the new Mvvm