add covariate on trait/edit

see <a href="https://ebi-forecast.igb.illinois.edu/redmine/issues/2198"> redmine #2198</a>
    Because this will save the updated attributes (if they are valid)
    before the covariates get saved, we still have the problem that
    the non-covariate updates get saved even when the covariate
    updates don't get saved (if they turn out to be invalid).

    The way around this, as I mentioned in an earlier comment, is to
    use database transactions.  (See the sample code I put into the
    Redmine issue.)