SVMs have been around for almost two decades now, which is an eternity in the ML world, rather than infancy.
SVMs don't require the problem set to be linearly separable.
Please note that there's a myriad of robust, scalable SVM implementations -- SVMlight, HeroSVM, LIBSVM, liblinear... (the latter two also have wrappers in scikit-learn, a Python library mentioned in the OP).