ENH: Consolidate and further improve performance of take functions
ENH: change usage of ndtake to take_nd with allow_fill=False
ENH: optimize Cython take functions with memcpy where possible