ENH: add PyDataMem_NEW_ZERO which allocates memory with calloc
ENH: use PyDataMem_NEW_ZERO (calloc) for PyArray_Zeros

PyDataMem_NEW_ZERO uses calloc which will take advantage of the fact
that most operating systems provide already zero initialized memory
blocks on larger allocations.
Additionally this memory can be sparse (= mapped to a single zero page)
on some systems (e.g. linux) reducing memory usage of applications
using sparse arrays.