Implements multiple selections clipboard paste

Includes:

  - Passing the selection index in the `Editor::mutateSelectedText`
method callback
  - Storing all the selections content on many calls of
`Selection::copy` with `maintainClipboard = true` in a metadata
`selections` array
  - Handling clipboard with a `selections` metadata in
the`Editor::pasteText` method
:lipstick: Fix typo in pasteText method comments
Allow newer version of `nodejs`
Adds specs for multi selections clipboard handling
Don't use comment lines to determine soft/hard tabs.

Closes atom/language-php#24
Closes #1733
Update README.md

Change 2010 express edition link because old one redirects to a general page about Visual Studio
Upgrade to text-buffer@2.2.1
Upgrade to find-and-replace@0.101.0
Merge remote-tracking branch 'origin/master' into cj-tabs-be-weird
Wordsmith the readme
fix io typo
This doesn't need to change.
Upgrade language-go for grammar improvements in atom/language-go#18
Merge pull request #1995 from dpen2000/patch-1

Update README.md
Add mercurial directories to default list of ignored names

atom already ignored git and svn directories. It makes sense to ignore
mercurial (.hg) directories as well.
Apply @probablycorey's suggestions
append .cmd to apm in package-manager.coffee if platform is win32
avoids NOENT error when searching for packages
Fix Windows build instructions
:memo: Some simple documentation fixes
Make atom build behind firewalls

This is to get `npm install` to work behind firewalls where `git://` is blocked.