Kernel methods through the roof: handling billions of points efficiently