improve random.choice performance and regen with cython 0.20

about 4 times faster than before for 50 elements, though still two times slower than `np.random.multinomial(1, probs).argmax()`