Added project
Code refactor
Updated gitignore