both snp and individual selection now work in c++. todo: wrap it in R