Renewable Energy form Oceans: From wave, tidal and gradient systems to offshore wind and solar