PRUNUS: a spatially explicit demographic model to study plant invasions in stochastic, heterogeneous environments