From Scratch - Generative Adversarial Networks