Probabilistic Watershed: Sampling all spanning forests for seeded segmentation and semi-supervised learning