Minimize the payload for npm.

Selectively choose which files to include in the module (for npm).
Currently, this is known to break npat=true when doing npm install.

https://code.google.com/p/esprima/issues/detail?id=493
https://code.google.com/p/esprima/issues/detail?id=510
Make npm test work on Windows and ignore node_modules directory

https://code.google.com/p/esprima/issues/detail?id=490
Link to the issue tracker from the package manifest

https://code.google.com/p/esprima/issues/detail?id=491
Manifest package.json must contain author field.

https://code.google.com/p/esprima/issues/detail?id=493
Refactor parseObjectProperty to simplify conditional logic.
Remove IllegalYield error and decompose matchYield helper function.

Outside of generator functions, 'yield' is now treated as a normal
identifier, so there is no longer such a thing as an illegal 'yield'
expression, per se. Now, the failure mode is that a 'yield' token might
not be parseable as an identifier (as in 'yield x').
Add tests of async functions and await expressions.
Support async function declarations and expressions.

This support includes arrow function expressions.
Support await expressions.
Remove unreachable code to satisfy code coverage tests.

I tried to write tests that would exercise the removed
matchAsyncFuncExprOrDecl() blocks, but it didn't seem possible. I might be
wrong about that, though.
Fix bug with matchAsync line terminator peeking.

If the next token is 'async' but the current parsing index is separated
from the 'async' token by a line terminator (and possibly other whitespace
or comments), the previous usage of peekLineTerminator() would return
true, improperly causing matchAsync() to return false.

What we want to know is whether the 'async' token is followed by a line
terminator, so we need to fast-forward the lookahead temporarily to just
after the 'async' token, call peekLineTerminator(), and then rewind.