CONTRIBUTING: Fixed link to style guide

(cherry-picked from 846771081c038f523612087d76deb3c853e252fd)
Ajax: don’t test jQuery.ajax() on beforeunload in Chrome 31

Chrome 31 doesn't fire Ajax requests in beforeunload event handler.
There is no way for us to workaround it and it's been fixed in Chrome 32
so let's just blacklist Chrome 31 as long as it's in TestSwarm.
See https://code.google.com/p/chromium/issues/detail?id=321241

(cherry-picked from fd0bce07584b73fb755574c4d462e0b175d1c6b6)
Build: Use absolute paths in .gitignore and .npmignore.

.gitignore/.npmignore treat all its paths as relative to *every*
directory in the repository. In most cases that’s not what’s desired.

(cherry-picked from 2d7315051193212fca6e7d64a3de87d96977c418)
Build: Upgrade to grunt-contrib-jshint 0.7.1 and squash subtasks

grunt-contrib-jshint 0.7.1 allows the jshintrc option to be set to true to have
it read the appropriate config file based on the file being checked. The only
place where we can’t use it is the check for dist/jquery.js that has the onevar
option removed.

(cherry-picked from 7deee6af72bfcf328fa09a28a1e68159cc58513f)

Fixes #14504
Readme: Fix typo, thanks @tcort
(cherry picked from commit 84190105c0f2acb39f33810678c36e4536bd1692)
Offset: Fix comment typo, thanks @AurelioDeRosa
Use the exact versions dependencies

And remove unused "which" package

Cherry picked from the commit 09ede3d33b1a43c399bc9549c634af634513a81d
Build: Add the ability to remove global exposure.

Ref #14016

Conflicts:
	build/tasks/build.js
	src/core.js
Build: add build option for setting the AMD name.

Fixes #14016.