MAINT: replace bytewise copy with memcpy

memcpy takes care of unaligned memory and is inlined by the compiler,
there is no need for own code.
Merge pull request #5169 from juliantaylor/pyobjcopy-simplification

MAINT: replace bytewise copy with memcpy
ENH: support parallel compilation of extensions

Allow extensions using numpy.distutils to compile in parallel.
By passing `--jobs=n` or `-j n` to `setup.py build` the compilation of
extensions is now performed in `n` parallel processes.
Additionally the environment variable NPY_NUM_BUILD_JOBS is used as
the default value, if its unset the default is serial compilation.

The parallelization is limited to within the files of an extension, so
only numpy multiarraymodule really profits but its still a nice
improvement when you have 2-4 cores.
Unfortunately Cython will not profit at all as it tends to build one
module per file.