written a working component iterator. Found and fixed a bug in read_csv.