Cascaded lattice Boltzmann method for incompressible thermal flows with heat sources and general thermal boundary conditions. (30th March 2018)