Furfural production from biomass–derived carbohydrates and lignocellulosic residues via heterogeneous acid catalysts