########################
version 1.1 (2016-01-24)
########################

  Initial release
  
########################  
version 1.2 (2016-02-07)
########################

  + 'fdr' function bug was fixed
  + addition of the 'randef' function
  + addition of the converter 'atcg1234' function 
  + names in the blup's or random effects added
  + zero-boundary constraint added to Average Information algorithm
     - it finds which var.comps are pushed to zero constantly
     - recalculates variance components removing such components 
     - fix those values and calculates the most likely value for 
       the problematic var.comp  
  + now 'mmer2' can handle missing data in explanatory variables as lmer
  + now summary of 'mmer2' has names in the variance components
  + A.mat, D.mat and E.mat supported for polyploids
  + mmer can run GWAS for polyploid organisms
     - the models implemented are the same than Rosyara (2016):
     - "additive","1-dom-alt","1-dom-ref","2-dom-alt","2-dom-ref"
  + eigen decomposition to accelarate genomic prediction based on Lee (2015)
    has been added in the argument 'MTG2' of the AI, mmer and mmer2 algorithm
  
########################  
version 1.3 (2016-03-09)
########################

  + The 'bag' function for bagging-GBLUP from Abdollahi-Arpanahi et al. (2015) 
    has been added:
        - The function takes a model fitted and creates a bag matrix with 
          the top markers (most significant) and creates a design matrix 
          to be used as fixed effects in the GBLUP model to increase 
          prediction accuracy.
  + 'bag' function has been equiped with stepwise selection to make sure that markers
    selected by "clustering" or "maximum" p.values methods provide at least a minimum
    increase in the prediction accuracy.
  + The Fisher Information matrix can be returned from the mmer function when 
    the AI is used (default) but the argument 'Fishers' needs to be set to TRUE.
  + The bug for the AI algorithm when one var.comp and K and Z are diagonal has been 
    fixed by changing to EMMA in this naive situation.
  + AI algorithm has been debuged to return the most likely variance components when the 
    likelihood takes values around the maximum in a zig zag pattern. Just takes the value 
    where the ML was found. When the likelihod follows a scale and dropping pattern
    the program will do the same. A warning message is emmitted.
  + GWAS modality of 'mmer' now adds the names of the markers of each score to keep track
    the value for each marker.

########################  
version 1.4 (2016-03-24)
########################

  + The AI algorithm will take 5 EM steps if after 10 iterations (AI) the likelihood drops 
    suddenly, indicating that initial values were too far from real values causing a bad 
    behavior of the likelihood. The EM steps aim to provide initials values for those 
    problematic variance components. ONLY mmer2!!!!!!
  + The AI likelihood behaving in a zig zag pattern is detected only after 10 iterations 
    and we opted for returning the ML estimators.
  + Minor bugs have been fixed (names in random terms). In addition, ordering random effects
    based on their degrees of freedom has been implemented to provide more stability to the 
    AI algorithm.
    
########################  
version 1.5 (2016-05-03)
########################

  + Problem of "not-full rank X matrix" has been solved by reducing the X matrix column by
    column until is solved.
  + New alleles for deletions "-" has been added to the atcg1234 function 
  + More examples have been added to the software, including maize Technow et al. (2015) data 
    and rice Zhao et al. (2011)
  + We have opted for using the "EM" algorithm as default for the mmer2 function given the fact 
    that most users using the mmer2 function would not use covariance structures. The mmer keeps
    using the AI algorithm as default method.
  + Implementation of the initial version of TP.prep function designed to select the best 
    training population for genomic selection.
    
########################  
version 1.6 (2016-05-19)
########################

  + Addition of the Newton-Raphson algorithm to sommer.
  + Vignettes with several examples available by typping vignette("sommer").
  + Bug in Principal Components within the function TP.prep has been fixed.
  + Example of GWAS for single cross hybrids has been added to the Technow data examples.
  + Bug on map.plot function for genetic maps fixed when having a column "Locus" as factor
  + Addition of winter bean data "FDdata" to exemplify the full diallel design calculation
  + mmer2 function now is fully functional as mmer but using data frames. All parameters
    can be manipulated as mmer except for the hdm function for half diallels.
  + The program will subset W if some markers are not polymorphic
  + beeper has beed added to the program to choose what sound to display when the program 
    is don doing the calculations.
  + Now genetic maps can be added for a better display of the manhattan plots.
  + QQ plots are now displayed when doing GWAS for different models.
  
########################  
version 1.7 (2016-05-23)
########################

  + Now the AI algorithm checks the situation when there are random effects with n < p 
    (less observations than parameters to estimate) to take the right values in AI 
    when extreme variance components values are found.
  + Bug in eigen decomposition of AI has been fixed by providing smaller starting values for
    the variance components
  + In addition, when n < p is present the initial values of the variance components are 
    reduced significantly to provide better starting values.
  + New bug in the FDR function fixed. Now GWAS with or without map displais the FDR line.
  
########################  
version 1.8 (2016-06-06)
########################
  
  + Minor changes, mainly in plotting defaults, warning messages, etc.
  + Addition of the phase.F1 function to create parental maps for F1(CP) crosses.
  + Addition of F1geno data accompaning phase.F1 function.
  + Argument MTG2 has been renamed as EIGEND.
  + EIGEND feature added to EMMA algorithm.
  + Bugs for errors when V(e) tends to zero have been fixed for all algorithms, warning
    messages have changed.
  + The function for finding biggest peaks "maxi.qtl" has been added.
  + Multiple responses can be fit using parallelization with the 'n.cores' argument
  
########################  
version 1.9 (2016-07-01)
########################

  + lmerHELP has been slightly modified. Now only uses lmer initial values when required
    and only used for non-square random effects.
  + AI has been modified to dimminish updates values when they scalate to quickly.
  + zig zag detection in AI2 has been implemented, now even when boundary constraint is
    applied there should not be any problem.
  + Now 'bag' function respects if a map is available and does the bagging based on the map.
  + 'manhattan' function added to the package.
  + 'eigenGWAS' function included based on Chen et al. (2016) in Heredity.
  + Bug in AI failing when only one variance compnent was present and was zero, making the 
    program collapse when trying to recalculate has been fixed.
  + Bugs in 'TP.prep' function fixed.
  + Now 'EMMA' algorithm handles multiple random effects.
  + The first multivariate algorithm "EMMAM" has been added to sommer (a single random effect).
  + Vignettes have examples for multi-response model and parallel univariate models.
  
##pendings
+ multivariate version (MAI) almost done (sorry I have spent more time including more algorithms and perfecting the current implementations)
+ add LD calculation with LD decay regression
+ link to structure
+ get incidence matrix from vcf file directly with probabilities instead of 0,1,2

