probability table resample

This PR attempts to introduce a fix into the URR probability table sampling methods.  As is, OpenMC does not appear to be correctly accounting for the correlation between energy and temperature (for a given nuclide) in the URR.  A paper on NJOY methods (http://t2.lanl.gov/nis/publications/methods.pdf) explains it well:
**Consider a collision that takes place in
a region at a particular temperature. The Monte Carlo
code samples from the probability table, getting a low
cross section. The mean free path then takes the particle
into another region at a diﬀerent temperature that con-
tains the same material. The sampled total cross section
there cannot be independent from the ﬁrst; the resulting
cross section must also be low. PURR handles this kind
of correlation. When a particular ladder of resonances
is sampled to obtain a probability table, all the diﬀerent
temperatures are sampled simultaneously at the same en-
ergies to preserve the correlations. In the Monte Carlo
code, it is only necessary to use the same random num-
ber to sample for the cross section in the two diﬀerent
regions to preserve the proper correlations.**
OpenMC has been modified on this branch to use the same random number when sampling a URR probability table for the same nuclide at different temperatures (assuming unchanged particle energy).

Turns out that test_salphabeta_multiple does not run when OpenMC is compiled with debug=on. This line fails because the test contains a void material, so `materials(p % material) = materials(-1)` = out of bounds. You should add a check for `p % material == MATERIAL_VOID`.