make plot of phi vs number of model runs - requires
    available pestpp .iobj file
        Parameters
        ----------
        pst : pyemu.Pst
        logger : Logger
            if None, a generic one is created.  Default is None
        filename : str
            PDF filename to save figures to.  If None, figures are returned.  Default is None
        kwargs : dict
            optional keyword args to pass to plotting functions

def phi_progress(pst,logger=None,filename=None,**kwargs):
    """ make plot of phi vs number of model runs - requires
    available pestpp .iobj file
        Parameters
        ----------
        pst : pyemu.Pst
        logger : Logger
            if None, a generic one is created.  Default is None
        filename : str
            PDF filename to save figures to.  If None, figures are returned.  Default is None
        kwargs : dict
            optional keyword args to pass to plotting functions


        """
    if logger is None:
        logger = Logger('Default_Loggger.log', echo=False)
    logger.log("plot phi_progress")

    iobj_file = pst.filename.replace(".pst",".iobj")
    if not os.path.exists(iobj_file):
        logger.lraise("couldn't find iobj file {0}".format(iobj_file))
    df = pd.read_csv(iobj_file)
    if "ax" in kwargs:
        ax = kwargs["ax"]
    else:
        fig = plt.figure(figsize=figsize)
        ax = plt.subplot(1,1,1)
    ax.plot(df.model_runs_completed,df.total_phi,marker='.')
    ax.set_xlabel("model runs")
    ax.set_ylabel("$\phi$")
    ax.grid()
    if filename is not None:
        plt.savefig(filename)
    logger.log("plot phi_progress")
    return ax