1.  Add the singleton() method.
2. Convert a number of method implementations to use ForEach() instead of doing explicit loops.