Difference between subgradient SVM and kernel SVM? What is the difference between subgradient svm and kernel svm? 

From my understanding subgradient svm is a linear classifier that uses hinge loss and kernel svm  uses some kernel function for non linear classification. I was wondering, if subgradient is only a linear classifier, could I use a tree of non linear svms to separate non linear data? I would essentially do binary classification separate 1 class vs the rest then the child node of the tree would work on the rest and separate the next class from the rest and so on.  Any general idea or feedback would be great.
You are gravely misunderstanding SVM. Sub-gradient descent algorithm for SVM is a method to solve the underlying optimization problem of SVM.

SVM is always a linear classifier, which can yet by using kernels operate in a higher dimensional space. Therefore in input space, the separating hyperplane (linear!) computed in feature space (kernel!), seems non-linear. 

Effectively you are thereby solving a non-linear classification task, but you are projecting into a higher dimensional feature space where the classification task is solved by a linear classifier. 

Please read: 

Wikipedia on svm

Please watch:

great lecture about SVM