Corrected a variable name

Corrected a variable name to match what it should accordingly
Added possible features to a comment

Added possible feature ideas to a comment
added utility methods and classes

Added support for “print on get” so that items can be printed out when
they are gotten from an iterable and also added the
“dict_of_lists_from” support to handle the common case of transforming
a list into a dict based on a key fund and a value func - cases that
can’t easily be done with a dict comprehension because there is no way
to aggregate the items that have the same keyfunc value.
Added in thunk and thunks

thunk.py uses Python generators to implement thunks - which allow for
simpler syntax than the awkward .send() method that generators objects
have by default. thunks.py provides some example thunks
Miscellaneous additions

constructors for True and False, and syntactic sugar of “tidy_assign”
for TidyAssign.
Improvements to CloneableObject

Made CloneableObject something more customizable with transformation
methods that can be subclassed and creation methods that can be
sublcassed, and made DictAdaptor that subclasses from CloneableObject
and made CloneableWithCopyOptions that uses the transform to allow for
copy transforms and such. Added comments for how to subclass from both
CloneableWithCopyOptions and DictAdaptor, but have not made that yet.