Science and technology of Borexino: a real-time detector for low energy solar neutrinos