* 3 new methods for class Circle and Dqueue
* mapSelf, flatMapSelf, mergeMapSelf
* these correspond to map, flatMap, mergeMap
* except they act on the class objects themselves, not new instances
* these new methods will NOT be added to the Stack class
* they would destroy node sharing
* did add a map method which returns a new instance (with new nodes)
* TODO: add flatMap and mergeMap methods
* probably will add them to the Dqueue class too
* not worth the maintenance effort maintaining two version of Dqueue
* one returning new instances
* the other modifying the object in place