The new kmeans: Fixed the bug caused by the commit for MADlib-730

Jira MADlib-734

The commit (f7d1f) for MADlib-730 would convert the centroids column
to float8[] using a wrong way, which fails the install-check. This
commit corrects this.
K-means: Fix k to be of type integer and add warnings
for when k < number of supplied centroids

JIRA: MADLIB-697, MADLIB-712
Fixed kmeans seeding functions and closest_columns to allow number
of centroids k to be of type integer.  Added parameter checks to
ensure k is within a valid range.  Added warnings to seeding
functions for when k < number of supplied centroids.
CRF: Specify MADLIB schema for create_schema_pg_temp()

JIRA: MADLIB-732
Specify MADLIB schema for create_schema_pg_temp() in
feature generaion and viterbi modules.
Build System: Make extension target names unique.

Jira: MADLIB-735

With introduction of PG 9.2 support, we needed to separate target names
for extension.  This allows users to build multiple version at a time.
Naive Bayes: Fixed null probability values in test results

Jira: MADLIB-523

This change addresses a issue in previous code that produced NULL
when unobserved feature values were found in test dataset.
For feature values in tests that are have not been observed in the
training data, we compute the probability of the classification
class producing that feature by using Laplace smoothing on prior
data.
K-means: Add non-finite value checks, fix temp schema bug
in __filter_input_relation, and convert expr_points to float[]

JIRA: MADLIB-403, MADLIB-737
Add non-finite value check for kmeans cset
and add error message when initial centroids have
non-finite values.  Fix __filter_input_relation so that
temp view does not include non-temp schema name.  Fix
simple_silhouette to convert expr_points to type float[].
K-means: Fix drop filtered input views and kmeans seeding
input validation

JIRA: MADLIB-729, MADLIB-742
Fix __filter_input_relation so that it drops the correct temp views
and fix kmeanspp and kmeans_random seeding to check the input from
th filtered view (instead of the original source)
K-means: Add type-checking for expr_point

JIRA: MADLIB-741
Add type-checking for expr_point to return better error message to user.
K-means: Add more relevant error messages

JIRA: MADLIB-741
Add better error messages for invalid schema and table.
K-means: remove old kmeans and cutover to new kmeans

JIRA: MADLIB-728
Cutover from old kmeans to new kmeans
Naive Bayes: Fix type cast errors

Jira: MADLIB-738

Commit d7cd128 introduced type casts errors triggering a failure in
install-checks. This fix takes care of the type cast error.

GPDPB 4.0 does not support array_agg. Hence we use m4 macros to
detect the platform and use the array_agg defined in array_ops
if necessary.

Other changes:
    Removed trailing whitespace
K-means: Edit documentation for new kmeans

JIRA: MADLIB-727
Edit the kmeans documentation to reflect the new kmeans implementation.
Multilogistic: Apply input validation for depvar, numcategories

Jira: MADLIB-673, 733

Dependent variable is of the form '1 of K values'. Hence, we only
support integer values for depvar. If the 'depvar' column in the
'source' table is not of type INTEGER then an exception is raised.
The 'numcategories' is redundant since we only develop as many
models as distinct categories present in the training data. If the
user specifies a 'numcategories' parameter that is greater than the
actual number of categories then it could lead to overflow/underflow errors, hence a warning is presented in such a
scenario.

Other changes:
    - Trailing whitespace removed
    - Other code cleanup in comments
Naive Bayes: Fix type cast errors, Take 2

Jira: MADLIB-744
Array concatenation was performed without casting the operands.
This fix provides the type cast.
CRF: Edit documentation and add example

JIRA: MADLIB-731
Edit CRF documentation and add text analytics example.