Organized imports
Add common IDE and OS files to .gitignore; Formatting changes and better follow Java conventions.
Move Java files in single package to a single folder instead of multiple folders per package.