Start with my original version and try and incorporate Karen's changes. Having spent some time on this, I think it might be easier to use Karen's as the starting point and then bring in any changes I've made since. This also means I should be able to more easily make the arguments optional rather than try to see exactly what Karen has done and replicate it from my original function.
Incorporate Karen's changes to the function without breaking backwards
compatibility.

Karen implemented the following:

    - ability to specify a single time and bracket the existing data
    around that time.
    - ability to replace arrays with scalar values (i.e. constant in the
    domain).

I've removed some functionality:

    - the ability to specify a new time series: instead, the input time
    is just taken as a start time and values are bracketed either side
    of it.

Overall, I think the removed functionality is no great loss since
there's no need to have a ramped input over the existing time span since
FVCOM will just use the last time step when restarting the model. The
added functionality is pretty useful (especially replacing values with
constants).