Refactor location definition.

Allows you to retrieve locations by name after they're defined, which
makes manipulating them a lot simpler. Some small Scene refactors as
well to support scenes having arbitrary fields, including "location"
fields.
[FIX] Reset score on replay.
Merge branch 'master' into gh-pages
Rebuild.
Merge branch 'master' into gh-pages
Rebuild.