This module is a simple visitor implementation for Perl values.
It has a main dispatcher method, visit, which takes a single perl value and
then calls the methods appropriate for that value.
It can recursively map (cloning as necessary) or just traverse most structures,
with support for per object behavior, circular structures, visiting tied
structures, and all ref types (hashes, arrays, scalars, code, globs).
Data::Visitor is meant to be subclassed, but also ships with a callback driven