Fix bug in DiscreteLaw for sigma == 0
Reimplement Tournament algorithm per paper clarification and cleanups
Handle tails on endpoints of range in DiscreteLaw