Split code in modules
Added gitignore