min_num_time_steps: The minimum number of timesteps the output vector should have
Tmax: The maximum time on the grid
instruments: A set of instruments whose maturity and terms and conditions can introduce extra timesteps. Each will be queried for the output of a critical_times function.
Returns
A vector of times at which the grid should have nodes