Npm package

This is a pull request to add support for knockout to be published as an npm package. For previous discussion, see #522.

It allows to be include knockout with `require("knockout")` (the minified version not the debug one)

I've tried it and it's working fine, there are two small things to address:

- in `package.json` in the `author` field usually there's the author email: `Steve Sanderson <email@here>. I don't know if @SteveSanderson wants to show it's email (which I don't know, too) so I leave it to him.

- Tests aren't included in the package (discussion about this in #522), I also leave it to Steve. The creator of npm said [here](https://github.com/SteveSanderson/knockout/issues/522#issuecomment-14121923) that it's a common practide to include them but as pointed out by this [question](http://stackoverflow.com/questions/8617753/exclude-test-code-in-npm-package) a lot of famous projects don't include them. I'm ok with excluding them but anyway it's not a big matter and it won't change how the package works.

- I've updated the README to mention the npm package, since my english isn't very good please modify it.

- A last small thing, it's annoying to update the current version in both `package.json` and `version.txt` (which I've updated to 2.2.1). I would like to use only the version in `package.json` to build Knockout but I didn't find a easy way to do it without changing the entire build system (switching to something Node based as gruntjs). But it's something not really important, just to point out :)