Merge pull request #391 from jeff1evesque/python_svm_training

#385: svm_training.py, add 'None' parameter in '.get()'
#375: data_validator.py, nest within 'if self.svm_session == \'training\':'
#375: data_validator.py, create 'elif' statement
#375: data_validator.py, move some validation out of 'IF' statement
#375: data_validator.py, move more validation out of 'IF' statement
#375: data_validator.py, add minor comment
#375: data_validator.py, add minor comment
#375: data_validator.py, move more validation out of 'IF' statement
#375: data_validator.py, remove 'ELIF' statement
#375: data_validator.py, adjust 'data_validation()' docblock
Merge pull request #392 from jeff1evesque/python_data_validator

#375: Adjust 'data_validator.py', 'analysis' case
#380: index.php, add 'jquery_validate.js' to head
Merge pull request #396 from jeff1evesque/php_index

#380: index.php, add 'jquery_validate.js' to head
#397: Add 'grunt' submodule
Merge pull request #402 from jeff1evesque/submodule_grunt

#397: Add 'grunt' submodule
#408: helper.py, adjust docblock
#408: helper.py, minor comment change
Merge pull request #409 from jeff1evesque/python_helper

#408: helper.py, adjust docblock
#394: Submodule, add jsonschema
Merge pull request #410 from jeff1evesque/submodule_jsonschema

#394: Submodule, add jsonschema