Store listener keys into an array instead of individual variables
Merge pull request #766 from fredj/cleanup

Cleanup
Relay mouseout browser event
Merge pull request #768 from fredj/mouseout

Relay mouseout browser event
getFeatures method and featureInfo templates

To avoid surprises for application developers, this change
creates a new getFeatures method. So it is clear now beforehand
whether features or feature info markup is returned. The result
is now also grouped by layer, so application developers always
have a link between a layer and the feature info it returns.

To make getFeatureInfo return markup for vector layers, this
change also adds a featureInfoFunction property to the vector
layer, which gives developers full control over how features are
rendered to feature info markup.
Renaming featureInfoFunction to transformFeatureInfo
API doc improvements
Merge pull request #744 from ahocevar/getfeature

getFeatures method and featureInfo templates. r=@bartvde
Initial bits for parser
More char code tests
Separate lexer
Renaming for clarity
Scan numeric literals
Expectations about token type
Space and comment
Scanning identifiers

This includes code that is likely not necessary.  The escape sequence scanning will likely not be used in our case, but I'm committing it here so it can be brought back if needed later.
Escape sequences in our identifiers have already been handled
Scan string literals
Skip whitespace
Test punctuator scanning