Relaxation scheme is a class template intead of enum

This makes possible adding new smoothers without changing core sources