Cobalt-nitrogen doped 3D porous carbon prepared with self-generated nanoparticles as sacrificial templates for hydrogen generation. (16th February 2017)