Demystifying Support Vector Machines: Dealing with Non-Separable Data Demystifying Support Vector Machines: Dealing with Non-Separable Data