Specs: Whitespace fix + add semicolon in tested parser code
Allow passing options to the parser

This commit replaces the |startRule| parameter of the |parse| method in
generated parsers with more generic |options| -- an options object. This
options object can be used to pass custom options to the parser because
it is visible as the |options| variable inside parser code.

The start rule can now be specified as the |startRule| option. This
means you have to replace all calls like:

  parser.parse("input", "myStartRule");

with

  parser.parse("input", { startRule: "myStartRule" });

Closes GH-37.
s/Modelled/Modeled/

"modelled" is a British variant, "modeled" an US one. PEG.js officially
uses American English.

Based on pull request by John Gietzen:

  https://github.com/dmajda/pegjs/pull/102
README.md: Fix project website link
README.md: Add wiki link
Fix typo in testcase description
Do not modify |options| passed to |PEG.buildParser|

Modifying |options| can lead to subtle bugs.
Allowed start rules must be specified explicitly

Before this commit, generated parser were able to start parsing from any
rule. This was nice, but it made rule code inlining impossible.

Since this commit, the list of allowed start rules has to be specified
explicitly using the |allowedStartRules| option of the |PEG.buildParser|
method (or the --allowed-start-rule option on the command-line). These
rules will be excluded from inlining when it's implemented.
Grammar typo
Update examples/javascript.pegjs

Changed "arguments" to "args" in several places to avoid shadowing "arguments", which is not allowed by Google Clusure Compiler.
Fix banner typo
README.md: Wrap lines at column 80
Merge pull request #113 from Almad/master

Grammar typo
Fix typo found by Almad also in the generator
Merge pull request #115 from fpirsch/patch-1

Changed "arguments" to "args" in a few places.
Do not preprecess package.json

Before this commit, package.json in the project root directory was
preprocessed in order to insert correct version into it. This made it
invalid JSON and thus unusable for npm purposes.

This commit makes package.json a valid JSON by hardcoding the version
into it. I think that introducing this small duplicity is outweighted by
being able to use npm in project root directory. For example, it is now
possible to make the "npm test" command work and introduce Travis CI
integration.
Make "npm test" work

This is will be useful for Travis CI integration
Implement Travis CI integration
Change |PEG.GrammarError| name

Change the value of the |name| property of |PEG.GrammarError| instances
from "PEG.GrammarError" to just "GrammarError". This better reflects the
fact that PEG.js can get required under different name than "PEG".
Setup prototype chain for |PEG.GrammarError| correctly