Ensure all plot handles get freed on each loop in chebsnake.
Ensure all plot handles get freed on each loop in chebsnake.

This closes #715.  The reason for the slowdown observed in that ticket is that
chebsnake was not properly freeing all the handle objects that chebfun.plot()
generates on each run of the loop, only the one that corresponds to the line
plot.  As these unfreed objects accumulate, the MATLAB plotting stack has to do
more and more work to update the plot, resulting in the slowdown

The reason this behavior was missed in the port of chebsnake to v5 is probably
that the output syntax for chebfun.plot() has changed. v4 chebfun.plot()
returns all the handles in one column vector output. v5 chebfun.plot() returns
them as separate outputs using varargout.

This commit fixes this problem by wrapping all calls to chebfun plot() in
chebsnake in a special function which properly extracts all of the handles and
collates them into a numeric vector so that we can reuse the existing code for
deleting them.

alshedivat/chebfun,ilovejs/chebfun,asgeirbirkis/chebfun