Recent progress of visible-light-driven heterogeneous photocatalysts for overall water splitting