Neutrino Physics and Astrophysics with the JUNO Detector