Implementing a Non-Linear SVM