Allow L.GeoJSON constructor to accept a custom context as a third parameter, to be passed to callbacks filter, onEachFeature, and pointToLayer.

New type signature of `L.geoJSON` is:

```
L.geoJSON( <Object> geojson?,
<Object> options?,
<Object> context? )
```

If a context is passed in, then `pointToLayer`, `filter`, and `onEachFeature` are called with this custom context.  Otherwise, the context of each of these callbacks is set to `undefined`.