SVEC: Another fix for text order in gp_sfv.

Jira: MADLIB-457
The previous fix was not correct in that replacing strcmp with strcol was
still not enough to match behaviors with the text sort operation in the
database backend.  There is a little hack to deal with undefined orders in
non-C collation, in which case the backend uses strcmp as the last resort.

I rewrote the existing implementation to be efficient with use of bttextcmp.
This contains a little more of cosmetic changes than addressing issue, as
well as the fix for test failure in use of the ordered aggregate in PG8.4
and GPDB4.0.

We don't support COLLATE in PG9.1.  It's a TODO for now.
Probability functions: Improved handling of invalid arguments

Jira: MADLIB-538, MADLIB-541, MADLIB-542, MADLIB-543, MADLIB-548

Fixes:
- Chi-Squared GOF test: return NULL for p-values if d.f. <= 0 instead of raising an error (MADLIB-538)
- "parameter x is not accepting 0 in pareto cdf and pdf" (MADLIB-541)
- "parameter x is not accepting positive and negative infinities in triangular/uniform cdf/pdf" (MADLIB-542)
- "fisher f quantile with NaN as df2 should return NaN, but it raises internal error" (MADLIB-543)
- "rayleigh cdf/pdf are accepting positive infinity as their parameter scale while they should not" (MADLIB-548)

Miscellaneous:
- Fixed link to CERN ROOT in licence directory
- Added WebSVN links to kolmogorov.cpp
Wilcoxon-Signed-Rank test: Changes semantics for precision argument, Documentation update

Jira: MADLIB-405, MADLIB-534, MADLIB-553

Probability functions:
- Hollander/Wolfe ("Nonparametric statistical methods", 2nd ed., p. 38, 1999) confirm the formula that we have been using. The warning about conflicting source has been deleted. (MADLIB-405)
- No longer treat NULL as special value for precision argument (MADLIB-534)
- Negative precision will now result in using the default precision, non-finite precision will be rejected (MADLIB-553)

SQL2C++ converter:
- Support for unary expressions (needed for negative default arguments)
Probability functions (Extreme-value/Exponential): Fixed handling of non-finite parameters

Jira: MADLIB-555, MADLIB-556

These are boost "bugs". Implemented fixes for the cases where boost does not catch non-finite parameters.
Probability functions: Documentation update

Jira: MADLIB-546

Fixes:
- Noncentrality parameter for Chi-squared may also be 0
Kolmogorov-Smirnov test: Fixed wrong calculation of test statistic

Jira: MADLIB-554

Fixed the following issue:
Whenever, we saw a new row, we computed the distance of the empirical distribution functions at the current position as

    double diff = std::fabs(state.num(0) / state.expectedNum(0)
                    - state.num(1) / state.expectedNum(1));

This could give wrong results in case of ties. After all, we increased state.num(0) and state.num(1) one after the other, so diff could temporarily be larger than it would be at the end of a group of ties.
One-way ANOVA: return NULL for p-values if d.f. <= 0 instead of raising error

Jira: MADLIB-552
Doxygen documentation: Small fixes

Jira: MADLIB-557

Fixes:
- Small changes to predefined macros to reflect recent changes in C++ code
- Fixed Doxygen warnings in hypothesis tests
- Degress of freedom for t-test consistently changed to FLOAT8 in documentation
Probability functions: Fixes for handling of corner cases

Jira: MADLIB-544, MADLIB-545, MADLIB-556 (reopened)

Fixes:
- inverse_gamma_quantile(0, alpha, beta) now always returns 0 (MADLIB-544)
- lognormal_*() now raise error on invalid location (MADLIB-545)
- extreme_value_*(): Use boost's check_scale() function instead of own error message (MADLIB-556)
- Unit tests for the above
Probability functions: Improved corner-case handling for [negative_]binomial functions

Jira: MADLIB-537, MADLIB-544

Fixes:
- binomial and negative_binomial: Corner cases with success probability 0 or 1 are overridden, instead of being wrongly handled by boost
- Disallow success probability 0 for negative binomial
- Documentation: inverse_gamma_quantile() now accepts probability 0 (MADLIB-544)
- New unit tests for the above
Probability functions: Fixed Overflow Error in geometric_cdf()

Jira: MADLIB-540

Boost 1.49 calls boost::math::log1p with the standard policy (which is raising an overflow error). We therefore handle success probability 1 as a special case.
Documentation for Decision Tree: Minor fix

Jira: MADLIB-559

An enumeration mistakenly did not contain sequential numbers.
Documentation: Overview of Probability Module

Jira: MADLIB-570
Documentation: Overview of Hypothesis Tests Module

Jira: MADLIB-571
A few documentation imrovements

JIRA: MADLIB-569

Small updates in Feature Extraction, Compatibility, Linrar Regression, and Utilities
v0.4: Release notes, Version number, Read-Me

Jira: MADLIB-568
User documentation: Now include amssymb package for LaTeX formulas

Jira: None

'make doc' could get stuck when LaTeX complained about the unknown command \subsetneq. This command is part of the amssymb package.
Build System: Update PGXN files for v0.4.