Analog Bits: Generating Discrete Data using Diffusion Models with Self-Conditioning