New Zealand have humbled India by eight wickets in the first Test in Bengaluru, after the hosts' embarrassing first innings of 46.