Current progress and future challenges in thermoelectric power generation: From materials to devices. (1st April 2015)