added sort and unique algorithm

currently uses stl for implementation. in future should select best for
each container