Updating gitignore and refreshing the repository

The gitignore was not robust. It ignored very less files and didn't accommodate for editors, bower, etc.

Now the following categories are ignored:

* Nodejs
* Bower
* OSX
* vim
* Emacs

/cc @raghothams, @coryarmbrecht