GAN Fundamentals