There are two template fns for printing out
values: the printed form is delimited with square brackets, and items are
separated by commas (and a space). These use the normal C++ syntax:
cout << VectorValue << endl; cout << ListValue << endl;
The implementations could hardly be simpler. The only "clever" part is
OutputRange which actually does the work.
OutputRange is publicly visible, but is not intended for public use.