Implement LocationMarker object type.

This is the master-branch patch analogous to #185, which applies to
the harmony branch.

https://code.google.com/p/esprima/issues/detail?id=429
AMD test: Do not load via script tag explicitly.

The loading of Esprima should be handled by RequireJS.

http://code.google.com/p/esprima/issues/detail?id=291
Remove the need to specialized token handling.

This also get rids of the patch and unpatch pair.

https://code.google.com/p/esprima/issues/detail?id=398
Parsing empty switch contains 'cases' key

SpiderMonkey and the Parser API defined 'cases' to be in the
SwitchStatement production.

https://code.google.com/p/esprima/issues/detail?id=436