add extend to ViewModel prototypes