remove unused import; refactor
savefig_legend_outside: accept "dir" argument

use ensure_dir to make sure it exists
define experiment_utils derived functions in module

not in __main__
Don't save figure in plot_grouped_data
create new plot_results

"new" better matches what experiment_utils defines
subsume old plot_results into "new"
BUGFIX: prefix do_experiments properly
demonstrate generating a frmae from results
account for changes to timing_test_utils