ENH: random: Allow ngood=0 or nbad=0 in mtrand.hypergeometric.

Also edited the 'Parameters' section of the docstring to comply
with the numpy docstring standard.
Merge pull request #3431 from WarrenWeckesser/mtrand-hypergeom-edge-case

ENH: random: Allow ngood=0 or nbad=0 in mtrand.hypergeometric.
ENH: vectorize boolean logical &&, ||, abs and not

Improves performance by about a factor of 6.
These operations currently currently can't be autovectorized by gcc 4.8.