MyList Cpp implementation of lazily evaluated list structure, that supports map, filter, foldLeft and reverse.