Add versioning for GML format

This PR proposes to add versoning for GML format.
It is based on a `gml/base.js` that contains base GML format objects and methods.
Then 2 versions `ol.format.GML.v2` and `ol.format.GML.v3` inherit from base to implement 

- the read for GML 2.1.2
`<gml:coordinates>`
`<gml:outerBoundaryIs>`
`<gml:innerBoundaryIs>`

- the read/write for GML 3.1.1

Also, WFS format has been changed a little to use by default an `ol.format.GML.v3` format to read features from the WFS response. You can change this default behavior by passing a `gmlFormat` option to the `ol.format.WFS` constructor. You can then read a WFS 1.0.0 with GML 2 for example. A test has been added in wfs format tests.
I added a test to read WFS 1.0 with just changing the GML format version. The parsing worked well without the need to version the WFS too.

Actually it is the main purpose of my PR : to be able to read a WFS with GML2.