WFS 2.0 cascaded stored query

Support for cascaded stored query backed layers from wfs-ng datastores.
Based on email discussion we need to be sure Map<String, Object> metadata has a javadoc :)

You can go ahead and introduce a parameter object now, or I can do it have this is all merged in.

From email:

```
// for backwards compatibility (deprecate or remove to force compile failure)
GeoServerFeatureSource(source, schema, definitionQuery, declaredCRS, srsHandling, linearizationTolerance){
   this( source, new Settings( schema, definitionQuery, declaredCRS, srsHandling, linearizationTolerance) );
}
GeoServerFeatureSource(source, schema, Settings settings ){
  ...
}
```

Where "GeoServerFeatureSource.Settings" is a parameter object which we can add fields to over time:

```
static class Settings {
  SimpleFeatureType schema = null;
  Filter definitionQuery = null;
  CoordinateReferenceSystem declaredCRS = null;
  int srsHandling = null;
  Double linearizationTolerance  = null;
  Map<String, Object> metadata = null;
}
```