Ni-doped hierarchical porous carbon with a p/n-junction promotes electrochemical water splitting