Topic/plat 6858

* Implemented **ProductPiecewisePolynomialInterpolator** and its wrappers, **ProductPiecewisePolynomialInterpolator1D**, **ProductPolynomialExtrapolator1D** and **ReciprocalExtrapolator1D**. 
* All of these have test classes, **ProductPiecewisePolynomialInterpolatorTest**, **ProductPiecewisePolynomialInterpolator1DTest**, **ProductPolynomialExtrapolator1DTest** and **ReciprocalExtrapolator1DTest**.  
This method looks extremely similar to https://github.com/OpenGamma/OG-Platform/blob/topic/PLAT-6858/projects/OG-Analytics/src/main/java/com/opengamma/analytics/math/interpolation/ProductPiecewisePolynomialInterpolator1D.java#L72, would it make sense for it to be inherited from a common source?