Add Heston expansion engine for European options.

Thanks to Fabien Le Floc'h.
Replaced postfix operators with prefix operators in loops to avoid unnecessary temporaries
Prevent reassignment before previous values have been used
Pass vectors by reference to eliminate unnecessary copies
Initialize test vectors in initializer lists
Pass state to function object by reference, not by value, to eliminate unnecessary memory allocation stemming from Array copy constructor
Revert changes that break backward compatibility.

This reverts commit cdcc8c30f61d113dd2f2b608417b2a06c5ea9324.
Merge pull request #91.
Add index-based constructors to rate helpers.
Export swap-helper constructors with discounting curve.
Export overnight indexes.
Export OIS rate helpers.
Updated SWIG bindings for rate helpers.

Where allowed by the underlying library, helpers can now
use and external discount curve. Missing overloads of the
constructors were also exported.
Fixed arguments passed to CmsLeg in test case.

I'm not sure how this was working previously. It's likely that
SWIG 2.0.x used less strict type checks and allowed conversion
to and from booleans. SWIG 3.0 no longer allows this.
Ignored artifact from newer Perl tools.
Added China Inter Bank Holiday calendar

China Inter Bank holidy schedule is different from SSE (Shanghai
Securities Exchange). Some weekends are good working days for inter bank
market. Now the working weekends are hard coded for the years 2013 and
2014
Replace hard tabs with spaces.
Include required header only.
Rename inner class for consistency.
Hide implementation of working weekends as set.