BUG: fix hashing of long integers under python3

python3 long_hash is more complex than int_hash so instead of copying
into numpy call it via the Python capi.
Same for long long for wich the numpy hash function is not correct with
python 2.7 on i386.
Will be slower but doesn't need adapting each timy python changes.
closes #3793
Merge pull request #3809 from charris/backport-1.8-3800

Backport 1.8 3800