Semi-supervised Learning with GANs: Manifold Invariance with Improved Inference