modularized code
changed gitignore
merged varun