Added ability for viewmodel to take custom view