add ignore patterns
add To<> fcn; add comments; some superficial rearrangement