Implemented Restricted Boltzmann Machines
updated NEWS file to include changes to the NeuralNets module
Merge pull request #2304 from khalednasr/rbms

Implemented Restricted Boltzmann Machines
Merge pull request #2305 from mazumdarparijat/documentation

Modular API, minor fixes in CHAID
Merge pull request #2307 from mazumdarparijat/documentation

Coverity scan defects fixed for RandomForest
Added support for softmax visible units and sampling with evidence to CRBM
Merge pull request #2315 from khalednasr/rbms

Added support for softmax visible units and sampling with evidence to CRBM
Minor refactoring in:
    * all the StructuredModels
    * all the StructedOutputMachines
to provide support for sparse joint feature vector
Modified all the StructuredOutputModels to include
get_sparse_joint_feature_vector() method.
Implemented CHashedMultilabelModel class to faciliate feature hashing in
multilabel scenario.
Added unit-test for CHashedMultilabelModel
update the MatrixOperations class
update the base class
update the first KL method
update the second KL method
update the third KL method
Merge pull request #2310 from mazumdarparijat/documentation

cross-validation enabled for TreeMachine, added CART notebook
add_to_dense() method added in SGSparseVector for adding a dense vector
Merge pull request #2312 from yorkerlin/develop

update  all KL methods
Minor refactorings and changes in:
    * all the StructuredOutputModels
    * all the StructuredOuputMachines
to remove redundant methods and intializations