copy algo
tests for functors
stl containers support added