Lattice Boltzmann methods for multiphase flow and phase-change heat transfer