Recent progress on flat plate solar collectors and photovoltaic systems in the presence of nanofluid: A review