Fix a few bugs that broke the sync

- Fix the distribution build
- Move client app to be deployed under (web/js/app, not directly under web/js)
Move jshint configuration to .jshintrc and change Grunt to use that file