Solar Energy and the Power Grid: The Need for Energy Storage and Software Innovation