Implement ex-coupon date for fixed rate bonds

This commit adds support for ex-coupon dates to fixed rate bonds and
updates the cashflow calculations to take account of this date.  The
results have been verified against Bloomberg for UK Gilts and Australian
Government Bonds
added Broadie-Kaya exact simulation for the Heston model
added pricing engine for arbitrary European payoffs under the Heston
model
fixed formatting
updated VC10 files
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.
Updated most moving holidays for 2014.
Avoid empty /I or /L flags when compiling under Windows.

Those were possible if the INCLUDE or LIB variables ended with
a trailing semicolon.
Remove unused variables to avoid clang warning.
Hide methods to avoid clang warning.
Use passed seed in RNG initialization.