adding feature on supporting data.frame as the phenodata;
and refacting some source code!