Allow passing a ViewModel

Following an awesome suggestion by @RWOverdijk himself.