Added GUI support through pygame
Code Restructuring
Updated .gitignore
More restructuring