Add ReactiveUserControl<ViewModel> helper class

Fixes #348