ENH: use lgamma function from John D. Cook

Conflicts:
	sklearn/metrics/cluster/expected_mutual_info_fast.c
	sklearn/utils/lgamma.cpp
	sklearn/utils/lgamma.pyx
	sklearn/utils/setup.py
Merge branch 'master' into lgamma_port

Conflicts:
	sklearn/metrics/cluster/expected_mutual_info_fast.pyx
zero_one_loss now does normalize on default.
DOC add recall_score to new classification metrics listing
Changed a minus sign to a plus sign in the documentation of n_jobs in some files.
Merge pull request #1577 from ApproximateIdentity/n_jobs-documentation

Changed minus sign to plus sign in the docs of n_jobs in some files.
DOC document gamma in chi2_kernel.
update year in copyright notices
Fresh fixes of grammar errors
Grammar fixes
Changed minus sign to plus.
Merge pull request #1578 from zaxtax/elastic_documentation

Elastic documentation
TST add common test to check if estimators overwrite their init params
ENH use only a few samples in test.
FIX in tree and ensemble: don't overwrite random state in fit.
FIX don't overwrite random_state in fit in EllipticEnvelope
FIX don't modify random_state in clustering algorithms.
ENH make code more clear: MiniBatchKMeans only uses random_state in first run of partial_fit.
FIX in ward: don't overwrite n_components.
FIX remaining parameter issues in GradientBoosting