clone() doesn't use copy constructor

... and other bug fixes