As the results in Gujarat throw up a very narrow win for the BJP and a better than expected performance for the Congress, will there finally be a real contest in the 2019 elections? Can the opposition get its act together or is PM Narendra Modi going to hold on.