Functional Collections: A Functional Set