Organic and Organic-Inorganic Solar Cells: From Bulk Heterojunction to Perovskite Solar Cells