getProjection method on parsers

With this, vector sources/layers do not need to make
assumptions on the data projection.
Implementing getProjection for KML and GPX
Better interface for passing projection and other metadata
fix up build
fix up the geojson tests
fix up KML tests
Using single argument for callback and string for projection

This makes the asynchronous and synchronous versions of
readFeatures work with the same data structures, and leaves
projection handling outside the parsers.
Get projection and axis order from GML data

To make tests pass, the winding order of the coordinates in the
test data had to be reversed to conform to common gml practice.
Fixing typo

Thanks @bartvde for spotting this.
Do not translate projections using regular expressions
Sensible axisOrientation and srsName defaults
move srsName and axisOrientation from the instance to the read and write functions as discussed with @ahocevar
implement GMLReadOptions and GMLWriteOptions as discussed with @ahocevar
forgot to remove a commented code block
make Travis happy
Use goog.functions.sequence
Renaming handleWriteOptions to applyWriteOptions
Renaming readFeaturesWithMetadata* back to readFeatures*

Since this is not exported and we do not have a counterpart that
does not return the metadata, it should be fine to use a shorter
name.
Updating the TopoJSON parser to return a ReadFeaturesResult
Merge pull request #880 from openlayers/parser-projection

Get source projection from parser