NiO doped SnO2 p–n heterojunction microspheres: preparation, characterisation and CO sensing properties