Extend experimental generalized Hull-White model.

Thanks to Cavit Hafizoglu.

- Allow to choose the mapping function between short rate and
  state variable;
- Include the case of constant parameters.
Register inner option of convertible bond with observables.

This allows proper recalculation when anything changes.
Ignore inflation fixings stored at future dates.

The change was make for zero inflation only at this time.
Also, the comparison is made with today's date. We might be more
strict if we had a better way to determine what fixings can't yet
be announced.
Add utility class for creating custom Region instance.
Allow simple spreaded curves to wrap an empty handle.

This prevent an exception being raised when a null curve is set
to a handle that also happen to be wrapped by a spreaded curve.
Piecewise-spreaded curve can now choose interpolation.
Allow swap engine to work with empty legs.

In that case, start and end discounts will be null.
Use fixed tenor from swap index when building swaption.
Exported a few more features through SWIG.

- let Bond::settlementDate accept a Date argument;
- export Redemption and AmortizingPayment cash flows;
- export ZeroInflationIndex constructor to create custom instances;
- set default interpolation to Linear for piecewise inflation curves;
- export inflationBaseDate function;
- export more inspectors for ZeroCouponInflationSwap;
- renamed CashFlows::yield to yieldRate in Python to avoid keyword.
Avoid using deprecated features.
Merge a number of changes from StatPro.