Pseudo-fermion functional renormalization group for spin models