new
new1
new2
cp1 almost done, need comments, style, documentation.