Indian prime minister Narendra Modi predicted his BJP party would win a commanding victory in recent elections. But India's 969 million voters had something entirely different in mind.