Approximating the Permanent by Sampling from Adaptive Partitions