Improve UnivariatePolynomialFunction and add beginning of Function class
hierarchy