diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6b2335f
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,17 @@
+cover_db
+META.*
+MYMETA.*
+Makefile
+blib
+inc
+pm_to_blib
+MANIFEST
+Makefile.old
+nytprof.out
+MANIFEST.bak
+*.sw[po]
+.DS_Store
+.build
+Data-Visitor-*
+*.bs
+*.o
diff --git a/Changes b/Changes
index a807c39..b7ff840 100644
--- a/Changes
+++ b/Changes
@@ -1,3 +1,5 @@
+{{$NEXT}}
+
 0.30  2013-06-24
     - doy/data-visitor should probably be the canonical repository at this
       point
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index f00e09b..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,379 +0,0 @@
-This software is copyright (c) 2013 by Yuval Kogman.
-
-This is free software; you can redistribute it and/or modify it under
-the same terms as the Perl 5 programming language system itself.
-
-Terms of the Perl programming language system itself
-
-a) the GNU General Public License as published by the Free
-   Software Foundation; either version 1, or (at your option) any
-   later version, or
-b) the "Artistic License"
-
---- The GNU General Public License, Version 1, February 1989 ---
-
-This software is Copyright (c) 2013 by Yuval Kogman.
-
-This is free software, licensed under:
-
-  The GNU General Public License, Version 1, February 1989
-
-                    GNU GENERAL PUBLIC LICENSE
-                     Version 1, February 1989
-
- Copyright (C) 1989 Free Software Foundation, Inc.
- 51 Franklin St, Suite 500, Boston, MA  02110-1335  USA
-
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                            Preamble
-
-  The license agreements of most software companies try to keep users
-at the mercy of those companies.  By contrast, our General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  The
-General Public License applies to the Free Software Foundation's
-software and to any other program whose authors commit to using it.
-You can use it for your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Specifically, the General Public License is designed to make
-sure that you have the freedom to give away or sell copies of free
-software, that you receive source code or can get it if you want it,
-that you can change the software or use pieces of it in new free
-programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of a such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must tell them their rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-                    GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License Agreement applies to any program or other work which
-contains a notice placed by the copyright holder saying it may be
-distributed under the terms of this General Public License.  The
-"Program", below, refers to any such program or work, and a "work based
-on the Program" means either the Program or any work containing the
-Program or a portion of it, either verbatim or with modifications.  Each
-licensee is addressed as "you".
-
-  1. You may copy and distribute verbatim copies of the Program's source
-code as you receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice and
-disclaimer of warranty; keep intact all the notices that refer to this
-General Public License and to the absence of any warranty; and give any
-other recipients of the Program a copy of this General Public License
-along with the Program.  You may charge a fee for the physical act of
-transferring a copy.
-
-  2. You may modify your copy or copies of the Program or any portion of
-it, and copy and distribute such modifications under the terms of Paragraph
-1 above, provided that you also do the following:
-
-    a) cause the modified files to carry prominent notices stating that
-    you changed the files and the date of any change; and
-
-    b) cause the whole of any work that you distribute or publish, that
-    in whole or in part contains the Program or any part thereof, either
-    with or without modifications, to be licensed at no charge to all
-    third parties under the terms of this General Public License (except
-    that you may choose to grant warranty protection to some or all
-    third parties, at your option).
-
-    c) If the modified program normally reads commands interactively when
-    run, you must cause it, when started running for such interactive use
-    in the simplest and most usual way, to print or display an
-    announcement including an appropriate copyright notice and a notice
-    that there is no warranty (or else, saying that you provide a
-    warranty) and that users may redistribute the program under these
-    conditions, and telling the user how to view a copy of this General
-    Public License.
-
-    d) You may charge a fee for the physical act of transferring a
-    copy, and you may at your option offer warranty protection in
-    exchange for a fee.
-
-Mere aggregation of another independent work with the Program (or its
-derivative) on a volume of a storage or distribution medium does not bring
-the other work under the scope of these terms.
-
-  3. You may copy and distribute the Program (or a portion or derivative of
-it, under Paragraph 2) in object code or executable form under the terms of
-Paragraphs 1 and 2 above provided that you also do one of the following:
-
-    a) accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of
-    Paragraphs 1 and 2 above; or,
-
-    b) accompany it with a written offer, valid for at least three
-    years, to give any third party free (except for a nominal charge
-    for the cost of distribution) a complete machine-readable copy of the
-    corresponding source code, to be distributed under the terms of
-    Paragraphs 1 and 2 above; or,
-
-    c) accompany it with the information you received as to where the
-    corresponding source code may be obtained.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form alone.)
-
-Source code for a work means the preferred form of the work for making
-modifications to it.  For an executable file, complete source code means
-all the source code for all modules it contains; but, as a special
-exception, it need not include source code for modules which are standard
-libraries that accompany the operating system on which the executable
-file runs, or for standard header files or definitions files that
-accompany that operating system.
-
-  4. You may not copy, modify, sublicense, distribute or transfer the
-Program except as expressly provided under this General Public License.
-Any attempt otherwise to copy, modify, sublicense, distribute or transfer
-the Program is void, and will automatically terminate your rights to use
-the Program under this License.  However, parties who have received
-copies, or rights to use copies, from you under this General Public
-License will not have their licenses terminated so long as such parties
-remain in full compliance.
-
-  5. By copying, distributing or modifying the Program (or any work based
-on the Program) you indicate your acceptance of this license to do so,
-and all its terms and conditions.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the original
-licensor to copy, distribute or modify the Program subject to these
-terms and conditions.  You may not impose any further restrictions on the
-recipients' exercise of the rights granted herein.
-
-  7. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of the license which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-the license, you may choose any version ever published by the Free Software
-Foundation.
-
-  8. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-                            NO WARRANTY
-
-  9. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  10. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-                     END OF TERMS AND CONDITIONS
-
-        Appendix: How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to humanity, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these
-terms.
-
-  To do so, attach the following notices to the program.  It is safest to
-attach them to the start of each source file to most effectively convey
-the exclusion of warranty; and each file should have at least the
-"copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) 19yy  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 1, or (at your option)
-    any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA  02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) 19xx name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the
-appropriate parts of the General Public License.  Of course, the
-commands you use may be called something other than `show w' and `show
-c'; they could even be mouse-clicks or menu items--whatever suits your
-program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the
-  program `Gnomovision' (a program to direct compilers to make passes
-  at assemblers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-That's all there is to it!
-
-
---- The Artistic License 1.0 ---
-
-This software is Copyright (c) 2013 by Yuval Kogman.
-
-This is free software, licensed under:
-
-  The Artistic License 1.0
-
-The Artistic License
-
-Preamble
-
-The intent of this document is to state the conditions under which a Package
-may be copied, such that the Copyright Holder maintains some semblance of
-artistic control over the development of the package, while giving the users of
-the package the right to use and distribute the Package in a more-or-less
-customary fashion, plus the right to make reasonable modifications.
-
-Definitions:
-
-  - "Package" refers to the collection of files distributed by the Copyright
-    Holder, and derivatives of that collection of files created through
-    textual modification. 
-  - "Standard Version" refers to such a Package if it has not been modified,
-    or has been modified in accordance with the wishes of the Copyright
-    Holder. 
-  - "Copyright Holder" is whoever is named in the copyright or copyrights for
-    the package. 
-  - "You" is you, if you're thinking about copying or distributing this Package.
-  - "Reasonable copying fee" is whatever you can justify on the basis of media
-    cost, duplication charges, time of people involved, and so on. (You will
-    not be required to justify it to the Copyright Holder, but only to the
-    computing community at large as a market that must bear the fee.) 
-  - "Freely Available" means that no fee is charged for the item itself, though
-    there may be fees involved in handling the item. It also means that
-    recipients of the item may redistribute it under the same conditions they
-    received it. 
-
-1. You may make and give away verbatim copies of the source form of the
-Standard Version of this Package without restriction, provided that you
-duplicate all of the original copyright notices and associated disclaimers.
-
-2. You may apply bug fixes, portability fixes and other modifications derived
-from the Public Domain or from the Copyright Holder. A Package modified in such
-a way shall still be considered the Standard Version.
-
-3. You may otherwise modify your copy of this Package in any way, provided that
-you insert a prominent notice in each changed file stating how and when you
-changed that file, and provided that you do at least ONE of the following:
-
-  a) place your modifications in the Public Domain or otherwise make them
-     Freely Available, such as by posting said modifications to Usenet or an
-     equivalent medium, or placing the modifications on a major archive site
-     such as ftp.uu.net, or by allowing the Copyright Holder to include your
-     modifications in the Standard Version of the Package.
-
-  b) use the modified Package only within your corporation or organization.
-
-  c) rename any non-standard executables so the names do not conflict with
-     standard executables, which must also be provided, and provide a separate
-     manual page for each non-standard executable that clearly documents how it
-     differs from the Standard Version.
-
-  d) make other distribution arrangements with the Copyright Holder.
-
-4. You may distribute the programs of this Package in object code or executable
-form, provided that you do at least ONE of the following:
-
-  a) distribute a Standard Version of the executables and library files,
-     together with instructions (in the manual page or equivalent) on where to
-     get the Standard Version.
-
-  b) accompany the distribution with the machine-readable source of the Package
-     with your modifications.
-
-  c) accompany any non-standard executables with their corresponding Standard
-     Version executables, giving the non-standard executables non-standard
-     names, and clearly documenting the differences in manual pages (or
-     equivalent), together with instructions on where to get the Standard
-     Version.
-
-  d) make other distribution arrangements with the Copyright Holder.
-
-5. You may charge a reasonable copying fee for any distribution of this
-Package.  You may charge any fee you choose for support of this Package. You
-may not charge a fee for this Package itself. However, you may distribute this
-Package in aggregate with other (possibly commercial) programs as part of a
-larger (possibly commercial) software distribution provided that you do not
-advertise this Package as a product of your own.
-
-6. The scripts and library files supplied as input to or produced as output
-from the programs of this Package do not automatically fall under the copyright
-of this Package, but belong to whomever generated them, and may be sold
-commercially, and may be aggregated with this Package.
-
-7. C or perl subroutines supplied by you and linked into this Package shall not
-be considered part of this Package.
-
-8. The name of the Copyright Holder may not be used to endorse or promote
-products derived from this software without specific prior written permission.
-
-9. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
-WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
-MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
-The End
-
diff --git a/MANIFEST b/MANIFEST
deleted file mode 100644
index 75b6dea..0000000
--- a/MANIFEST
+++ /dev/null
@@ -1,24 +0,0 @@
-Changes
-LICENSE
-MANIFEST
-META.json
-META.yml
-Makefile.PL
-README
-dist.ini
-lib/Data/Visitor.pm
-lib/Data/Visitor/Callback.pm
-t/00-compile.t
-t/base.t
-t/bugs.t
-t/callback.t
-t/callback_aliasing.t
-t/callback_hash_entry.t
-t/callback_moose_tc.t
-t/circular_refs.t
-t/globs.t
-t/magic.t
-t/weak.t
-xt/release/eol.t
-xt/release/pod-coverage.t
-xt/release/pod-syntax.t
diff --git a/META.json b/META.json
deleted file mode 100644
index 6209e9a..0000000
--- a/META.json
+++ /dev/null
@@ -1,294 +0,0 @@
-{
-   "abstract" : "Visitor style traversal of Perl data structures",
-   "author" : [
-      "Yuval Kogman <nothingmuch@woobling.org>",
-      "Marcel Gr\u00c3\u00bcnauer <marcel@cpan.org>"
-   ],
-   "dynamic_config" : 0,
-   "generated_by" : "Dist::Zilla version 4.300034, CPAN::Meta::Converter version 2.120921",
-   "license" : [
-      "perl_5"
-   ],
-   "meta-spec" : {
-      "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
-      "version" : "2"
-   },
-   "name" : "Data-Visitor",
-   "prereqs" : {
-      "configure" : {
-         "requires" : {
-            "ExtUtils::MakeMaker" : "6.30"
-         }
-      },
-      "develop" : {
-         "requires" : {
-            "Pod::Coverage::TrustPod" : "0",
-            "Test::Pod" : "1.41",
-            "Test::Pod::Coverage" : "1.08"
-         }
-      },
-      "runtime" : {
-         "requires" : {
-            "Class::Load" : "0.06",
-            "Moose" : "0.89",
-            "Task::Weaken" : "0",
-            "Tie::ToObject" : "0.01",
-            "namespace::clean" : "0.19"
-         }
-      },
-      "test" : {
-         "requires" : {
-            "Test::More" : "0.88",
-            "Test::Requires" : "0"
-         }
-      }
-   },
-   "release_status" : "stable",
-   "resources" : {
-      "bugtracker" : {
-         "mailto" : "bug-data-visitor@rt.cpan.org",
-         "web" : "http://rt.cpan.org/Public/Dist/Display.html?Name=Data-Visitor"
-      },
-      "homepage" : "http://metacpan.org/release/Data-Visitor",
-      "repository" : {
-         "type" : "git",
-         "url" : "git://github.com/doy/data-visitor.git",
-         "web" : "https://github.com/doy/data-visitor"
-      }
-   },
-   "version" : "0.30",
-   "x_Dist_Zilla" : {
-      "perl" : {
-         "version" : "5.018000"
-      },
-      "plugins" : [
-         {
-            "class" : "Dist::Zilla::Plugin::Prereqs",
-            "config" : {
-               "Dist::Zilla::Plugin::Prereqs" : {
-                  "phase" : "test",
-                  "type" : "requires"
-               }
-            },
-            "name" : "@Filter/TestMoreDoneTesting",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::GatherDir",
-            "name" : "@Filter/GatherDir",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::PruneCruft",
-            "name" : "@Filter/PruneCruft",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::ManifestSkip",
-            "name" : "@Filter/ManifestSkip",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::MetaYAML",
-            "name" : "@Filter/MetaYAML",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::License",
-            "name" : "@Filter/License",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Readme",
-            "name" : "@Filter/Readme",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::RunExtraTests",
-            "name" : "@Filter/RunExtraTests",
-            "version" : "0.011"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::ExecDir",
-            "name" : "@Filter/ExecDir",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::ShareDir",
-            "name" : "@Filter/ShareDir",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::MakeMaker",
-            "name" : "@Filter/MakeMaker",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Manifest",
-            "name" : "@Filter/Manifest",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::TestRelease",
-            "name" : "@Filter/TestRelease",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::ConfirmRelease",
-            "name" : "@Filter/ConfirmRelease",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::MetaConfig",
-            "name" : "@Filter/MetaConfig",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::MetaJSON",
-            "name" : "@Filter/MetaJSON",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::NextRelease",
-            "name" : "@Filter/NextRelease",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::CheckChangesHasContent",
-            "name" : "@Filter/CheckChangesHasContent",
-            "version" : "0.006"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::PkgVersion",
-            "name" : "@Filter/PkgVersion",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Authority",
-            "name" : "@Filter/Authority",
-            "version" : "1.006"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::PodCoverageTests",
-            "name" : "@Filter/PodCoverageTests",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::PodSyntaxTests",
-            "name" : "@Filter/PodSyntaxTests",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::EOLTests",
-            "name" : "@Filter/EOLTests",
-            "version" : "0.02"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Test::Compile",
-            "name" : "@Filter/Test::Compile",
-            "version" : "2.002"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Metadata",
-            "name" : "@Filter/Metadata",
-            "version" : "3.03"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::MetaResources",
-            "name" : "@Filter/MetaResources",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Git::Check",
-            "name" : "@Filter/Git::Check",
-            "version" : "2.013"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Git::Commit",
-            "name" : "@Filter/Git::Commit",
-            "version" : "2.013"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Git::Tag",
-            "name" : "@Filter/Git::Tag",
-            "version" : "2.013"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Git::NextVersion",
-            "name" : "@Filter/Git::NextVersion",
-            "version" : "2.013"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::PodWeaver",
-            "name" : "@Filter/PodWeaver",
-            "version" : "3.101641"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::UploadToCPAN",
-            "name" : "@Filter/UploadToCPAN",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Prereqs",
-            "config" : {
-               "Dist::Zilla::Plugin::Prereqs" : {
-                  "phase" : "runtime",
-                  "type" : "requires"
-               }
-            },
-            "name" : "Prereqs",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::Prereqs",
-            "config" : {
-               "Dist::Zilla::Plugin::Prereqs" : {
-                  "phase" : "test",
-                  "type" : "requires"
-               }
-            },
-            "name" : "TestRequires",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::FinderCode",
-            "name" : ":InstallModules",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::FinderCode",
-            "name" : ":IncModules",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::FinderCode",
-            "name" : ":TestFiles",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::FinderCode",
-            "name" : ":ExecFiles",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::FinderCode",
-            "name" : ":ShareFiles",
-            "version" : "4.300034"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::FinderCode",
-            "name" : ":MainModule",
-            "version" : "4.300034"
-         }
-      ],
-      "zilla" : {
-         "class" : "Dist::Zilla::Dist::Builder",
-         "config" : {
-            "is_trial" : "0"
-         },
-         "version" : "4.300034"
-      }
-   },
-   "x_authority" : "cpan:NUFFIN"
-}
-
diff --git a/META.yml b/META.yml
deleted file mode 100644
index 932ddd0..0000000
--- a/META.yml
+++ /dev/null
@@ -1,210 +0,0 @@
----
-abstract: 'Visitor style traversal of Perl data structures'
-author:
-  - 'Yuval Kogman <nothingmuch@woobling.org>'
-  - 'Marcel Grünauer <marcel@cpan.org>'
-build_requires:
-  Test::More: 0.88
-  Test::Requires: 0
-configure_requires:
-  ExtUtils::MakeMaker: 6.30
-dynamic_config: 0
-generated_by: 'Dist::Zilla version 4.300034, CPAN::Meta::Converter version 2.120921'
-license: perl
-meta-spec:
-  url: http://module-build.sourceforge.net/META-spec-v1.4.html
-  version: 1.4
-name: Data-Visitor
-requires:
-  Class::Load: 0.06
-  Moose: 0.89
-  Task::Weaken: 0
-  Tie::ToObject: 0.01
-  namespace::clean: 0.19
-resources:
-  bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=Data-Visitor
-  homepage: http://metacpan.org/release/Data-Visitor
-  repository: git://github.com/doy/data-visitor.git
-version: 0.30
-x_Dist_Zilla:
-  perl:
-    version: 5.018000
-  plugins:
-    -
-      class: Dist::Zilla::Plugin::Prereqs
-      config:
-        Dist::Zilla::Plugin::Prereqs:
-          phase: test
-          type: requires
-      name: '@Filter/TestMoreDoneTesting'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::GatherDir
-      name: '@Filter/GatherDir'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::PruneCruft
-      name: '@Filter/PruneCruft'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::ManifestSkip
-      name: '@Filter/ManifestSkip'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::MetaYAML
-      name: '@Filter/MetaYAML'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::License
-      name: '@Filter/License'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::Readme
-      name: '@Filter/Readme'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::RunExtraTests
-      name: '@Filter/RunExtraTests'
-      version: 0.011
-    -
-      class: Dist::Zilla::Plugin::ExecDir
-      name: '@Filter/ExecDir'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::ShareDir
-      name: '@Filter/ShareDir'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::MakeMaker
-      name: '@Filter/MakeMaker'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::Manifest
-      name: '@Filter/Manifest'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::TestRelease
-      name: '@Filter/TestRelease'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::ConfirmRelease
-      name: '@Filter/ConfirmRelease'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::MetaConfig
-      name: '@Filter/MetaConfig'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::MetaJSON
-      name: '@Filter/MetaJSON'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::NextRelease
-      name: '@Filter/NextRelease'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::CheckChangesHasContent
-      name: '@Filter/CheckChangesHasContent'
-      version: 0.006
-    -
-      class: Dist::Zilla::Plugin::PkgVersion
-      name: '@Filter/PkgVersion'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::Authority
-      name: '@Filter/Authority'
-      version: 1.006
-    -
-      class: Dist::Zilla::Plugin::PodCoverageTests
-      name: '@Filter/PodCoverageTests'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::PodSyntaxTests
-      name: '@Filter/PodSyntaxTests'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::EOLTests
-      name: '@Filter/EOLTests'
-      version: 0.02
-    -
-      class: Dist::Zilla::Plugin::Test::Compile
-      name: '@Filter/Test::Compile'
-      version: 2.002
-    -
-      class: Dist::Zilla::Plugin::Metadata
-      name: '@Filter/Metadata'
-      version: 3.03
-    -
-      class: Dist::Zilla::Plugin::MetaResources
-      name: '@Filter/MetaResources'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::Git::Check
-      name: '@Filter/Git::Check'
-      version: 2.013
-    -
-      class: Dist::Zilla::Plugin::Git::Commit
-      name: '@Filter/Git::Commit'
-      version: 2.013
-    -
-      class: Dist::Zilla::Plugin::Git::Tag
-      name: '@Filter/Git::Tag'
-      version: 2.013
-    -
-      class: Dist::Zilla::Plugin::Git::NextVersion
-      name: '@Filter/Git::NextVersion'
-      version: 2.013
-    -
-      class: Dist::Zilla::Plugin::PodWeaver
-      name: '@Filter/PodWeaver'
-      version: 3.101641
-    -
-      class: Dist::Zilla::Plugin::UploadToCPAN
-      name: '@Filter/UploadToCPAN'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::Prereqs
-      config:
-        Dist::Zilla::Plugin::Prereqs:
-          phase: runtime
-          type: requires
-      name: Prereqs
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::Prereqs
-      config:
-        Dist::Zilla::Plugin::Prereqs:
-          phase: test
-          type: requires
-      name: TestRequires
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::FinderCode
-      name: ':InstallModules'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::FinderCode
-      name: ':IncModules'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::FinderCode
-      name: ':TestFiles'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::FinderCode
-      name: ':ExecFiles'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::FinderCode
-      name: ':ShareFiles'
-      version: 4.300034
-    -
-      class: Dist::Zilla::Plugin::FinderCode
-      name: ':MainModule'
-      version: 4.300034
-  zilla:
-    class: Dist::Zilla::Dist::Builder
-    config:
-      is_trial: 0
-    version: 4.300034
-x_authority: cpan:NUFFIN
diff --git a/Makefile.PL b/Makefile.PL
deleted file mode 100644
index c1035c6..0000000
--- a/Makefile.PL
+++ /dev/null
@@ -1,72 +0,0 @@
-
-use strict;
-use warnings;
-
-
-
-use ExtUtils::MakeMaker 6.30;
-
-
-
-my %WriteMakefileArgs = (
-  "ABSTRACT" => "Visitor style traversal of Perl data structures",
-  "AUTHOR" => "Yuval Kogman <nothingmuch\@woobling.org>, Marcel Gr\303\274nauer <marcel\@cpan.org>",
-  "BUILD_REQUIRES" => {},
-  "CONFIGURE_REQUIRES" => {
-    "ExtUtils::MakeMaker" => "6.30"
-  },
-  "DISTNAME" => "Data-Visitor",
-  "EXE_FILES" => [],
-  "LICENSE" => "perl",
-  "NAME" => "Data::Visitor",
-  "PREREQ_PM" => {
-    "Class::Load" => "0.06",
-    "Moose" => "0.89",
-    "Task::Weaken" => 0,
-    "Tie::ToObject" => "0.01",
-    "namespace::clean" => "0.19"
-  },
-  "TEST_REQUIRES" => {
-    "Test::More" => "0.88",
-    "Test::Requires" => 0
-  },
-  "VERSION" => "0.30",
-  "test" => {
-    "TESTS" => "t/*.t"
-  }
-);
-
-
-unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) {
-  my $tr = delete $WriteMakefileArgs{TEST_REQUIRES};
-  my $br = $WriteMakefileArgs{BUILD_REQUIRES};
-  for my $mod ( keys %$tr ) {
-    if ( exists $br->{$mod} ) {
-      $br->{$mod} = $tr->{$mod} if $tr->{$mod} > $br->{$mod};
-    }
-    else {
-      $br->{$mod} = $tr->{$mod};
-    }
-  }
-}
-
-unless ( eval { ExtUtils::MakeMaker->VERSION(6.56) } ) {
-  my $br = delete $WriteMakefileArgs{BUILD_REQUIRES};
-  my $pp = $WriteMakefileArgs{PREREQ_PM};
-  for my $mod ( keys %$br ) {
-    if ( exists $pp->{$mod} ) {
-      $pp->{$mod} = $br->{$mod} if $br->{$mod} > $pp->{$mod};
-    }
-    else {
-      $pp->{$mod} = $br->{$mod};
-    }
-  }
-}
-
-delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
-  unless eval { ExtUtils::MakeMaker->VERSION(6.52) };
-
-WriteMakefile(%WriteMakefileArgs);
-
-
-
diff --git a/README b/README
deleted file mode 100644
index 5390fc5..0000000
--- a/README
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-This archive contains the distribution Data-Visitor,
-version 0.30:
-
-  Visitor style traversal of Perl data structures
-
-This software is copyright (c) 2013 by Yuval Kogman.
-
-This is free software; you can redistribute it and/or modify it under
-the same terms as the Perl 5 programming language system itself.
-
-
diff --git a/debian/changelog b/debian/changelog
index 6555f40..7f6a491 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-libdata-visitor-perl (0.30-3) UNRELEASED; urgency=medium
+libdata-visitor-perl (0.30+git20130731.b53ff1a-1) UNRELEASED; urgency=medium
 
   [ gregor herrmann ]
   * Remove Jonathan Yu from Uploaders. Thanks for your work!
@@ -14,7 +14,10 @@ libdata-visitor-perl (0.30-3) UNRELEASED; urgency=medium
   [ Laurent Baillet ]
   * fix lintian file-contains-trailing-whitespace warning
 
- -- gregor herrmann <gregoa@debian.org>  Sat, 20 Aug 2016 02:25:37 +0200
+  [ Debian Janitor ]
+  * New upstream snapshot.
+
+ -- Debian Janitor <janitor@jelmer.uk>  Sun, 15 Sep 2019 02:57:48 +0000
 
 libdata-visitor-perl (0.30-2) unstable; urgency=medium
 
diff --git a/lib/Data/Visitor.pm b/lib/Data/Visitor.pm
index 7b27aef..38cb6d0 100644
--- a/lib/Data/Visitor.pm
+++ b/lib/Data/Visitor.pm
@@ -1,10 +1,4 @@
 package Data::Visitor;
-BEGIN {
-  $Data::Visitor::AUTHORITY = 'cpan:NUFFIN';
-}
-{
-  $Data::Visitor::VERSION = '0.30';
-}
 use Moose;
 # ABSTRACT: Visitor style traversal of Perl data structures
 
@@ -457,13 +451,7 @@ __END__
 
 =pod
 
-=head1 NAME
-
-Data::Visitor - Visitor style traversal of Perl data structures
-
-=head1 VERSION
-
-version 0.30
+=encoding utf8
 
 =head1 SYNOPSIS
 
@@ -515,8 +503,6 @@ structures, and all ref types (hashes, arrays, scalars, code, globs).
 L<Data::Visitor> is meant to be subclassed, but also ships with a callback
 driven subclass, L<Data::Visitor::Callback>.
 
-=encoding utf8
-
 =head1 METHODS
 
 =over 4
@@ -626,6 +612,7 @@ copying should be.
 
 Called if the C<DEBUG> constant is set with a trace message.
 
+
 =back
 
 =head1 RETURN VALUE
@@ -668,7 +655,9 @@ L<http://en.wikipedia.org/wiki/Visitor_pattern>,
 L<http://www.ninebynine.org/Software/Learning-Haskell-Notes.html#functors>,
 L<http://en.wikipedia.org/wiki/Functor>
 
-=for Pod::Coverage HAS_DATA_ALIAS
+=begin Pod::Coverage
+
+HAS_DATA_ALIAS
 visit_normal_array
 visit_normal_glob
 visit_normal_hash
@@ -678,25 +667,8 @@ visit_tied_glob
 visit_tied_hash
 visit_tied_scalar
 
-=head1 AUTHORS
-
-=over 4
+=end Pod::Coverage
 
-=item *
-
-Yuval Kogman <nothingmuch@woobling.org>
-
-=item *
-
-Marcel Grünauer <marcel@cpan.org>
-
-=back
-
-=head1 COPYRIGHT AND LICENSE
-
-This software is copyright (c) 2013 by Yuval Kogman.
+=cut
 
-This is free software; you can redistribute it and/or modify it under
-the same terms as the Perl 5 programming language system itself.
 
-=cut
diff --git a/lib/Data/Visitor/Callback.pm b/lib/Data/Visitor/Callback.pm
index f7d70bf..1e8c126 100644
--- a/lib/Data/Visitor/Callback.pm
+++ b/lib/Data/Visitor/Callback.pm
@@ -1,10 +1,4 @@
 package Data::Visitor::Callback;
-BEGIN {
-  $Data::Visitor::Callback::AUTHORITY = 'cpan:NUFFIN';
-}
-{
-  $Data::Visitor::Callback::VERSION = '0.30';
-}
 use Moose;
 # ABSTRACT: A Data::Visitor with callbacks.
 
@@ -294,13 +288,7 @@ __END__
 
 =pod
 
-=head1 NAME
-
-Data::Visitor::Callback - A Data::Visitor with callbacks.
-
-=head1 VERSION
-
-version 0.30
+=encoding utf8
 
 =head1 SYNOPSIS
 
@@ -338,8 +326,6 @@ version 0.30
 This is a L<Data::Visitor> subclass that lets you invoke callbacks instead of
 needing to subclass yourself.
 
-=encoding utf8
-
 =head1 METHODS
 
 =over 4
@@ -362,7 +348,7 @@ This is useful when you want to modify $_ directly
 
 =item tied_as_objects
 
-Whether ot not to visit the L<perlfunc/tied> of a tied structure instead of
+Whether or not to visit the L<perlfunc/tied> of a tied structure instead of
 pretending the structure is just a normal one.
 
 See L<Data::Visitor/visit_tied>.
@@ -418,12 +404,12 @@ Since L<Data::Visitor/visit_object> will not recurse downwards unless you
 delegate to C<visit_ref>, you can specify C<visit_ref> as the callback for
 C<object> in order to enter objects.
 
-It is reccomended that you specify the classes (or base classes) you want
+It is recommended that you specify the classes (or base classes) you want
 though, instead of just visiting any object forcefully.
 
 =item Some::Class
 
-You can use any class name as a callback. This is colled only after the
+You can use any class name as a callback. This is called only after the
 C<object> callback.
 
 If the object C<isa> the class then the callback will fire.
@@ -469,31 +455,14 @@ Passes in the result mapping as the second argument.
 
 =back
 
-=for Pod::Coverage DEBUG
+=begin Pod::Coverage
+
+DEBUG
 FIVE_EIGHT
 callback
 callback_and_reg
 subname
 
-=head1 AUTHORS
-
-=over 4
-
-=item *
-
-Yuval Kogman <nothingmuch@woobling.org>
-
-=item *
-
-Marcel Grünauer <marcel@cpan.org>
-
-=back
-
-=head1 COPYRIGHT AND LICENSE
-
-This software is copyright (c) 2013 by Yuval Kogman.
-
-This is free software; you can redistribute it and/or modify it under
-the same terms as the Perl 5 programming language system itself.
+=end Pod::Coverage
 
 =cut
diff --git a/t/00-compile.t b/t/00-compile.t
deleted file mode 100644
index cc7ad81..0000000
--- a/t/00-compile.t
+++ /dev/null
@@ -1,74 +0,0 @@
-#!perl
-
-use strict;
-use warnings;
-
-use Test::More;
-
-
-
-use File::Find;
-use File::Temp qw{ tempdir };
-
-my @modules;
-find(
-  sub {
-    return if $File::Find::name !~ /\.pm\z/;
-    my $found = $File::Find::name;
-    $found =~ s{^lib/}{};
-    $found =~ s{[/\\]}{::}g;
-    $found =~ s/\.pm$//;
-    # nothing to skip
-    push @modules, $found;
-  },
-  'lib',
-);
-
-sub _find_scripts {
-    my $dir = shift @_;
-
-    my @found_scripts = ();
-    find(
-      sub {
-        return unless -f;
-        my $found = $File::Find::name;
-        # nothing to skip
-        open my $FH, '<', $_ or do {
-          note( "Unable to open $found in ( $! ), skipping" );
-          return;
-        };
-        my $shebang = <$FH>;
-        return unless $shebang =~ /^#!.*?\bperl\b\s*$/;
-        push @found_scripts, $found;
-      },
-      $dir,
-    );
-
-    return @found_scripts;
-}
-
-my @scripts;
-do { push @scripts, _find_scripts($_) if -d $_ }
-    for qw{ bin script scripts };
-
-my $plan = scalar(@modules) + scalar(@scripts);
-$plan ? (plan tests => $plan) : (plan skip_all => "no tests to run");
-
-{
-    # fake home for cpan-testers
-    # no fake requested ## local $ENV{HOME} = tempdir( CLEANUP => 1 );
-
-    like( qx{ $^X -Ilib -e "require $_; print '$_ ok'" }, qr/^\s*$_ ok/s, "$_ loaded ok" )
-        for sort @modules;
-
-    SKIP: {
-        eval "use Test::Script 1.05; 1;";
-        skip "Test::Script needed to test script compilation", scalar(@scripts) if $@;
-        foreach my $file ( @scripts ) {
-            my $script = $file;
-            $script =~ s!.*/!!;
-            script_compiles( $file, "$script script compiles" );
-        }
-    }
-
-}
diff --git a/xt/release/eol.t b/xt/release/eol.t
deleted file mode 100644
index d13c49d..0000000
--- a/xt/release/eol.t
+++ /dev/null
@@ -1,8 +0,0 @@
-use strict;
-use warnings;
-use Test::More;
-
-eval 'use Test::EOL';
-plan skip_all => 'Test::EOL required' if $@;
-
-all_perl_files_ok({ trailing_whitespace => 1 });
diff --git a/xt/release/pod-coverage.t b/xt/release/pod-coverage.t
deleted file mode 100644
index b52218b..0000000
--- a/xt/release/pod-coverage.t
+++ /dev/null
@@ -1,13 +0,0 @@
-#!perl
-
-use Test::More;
-
-eval "use Test::Pod::Coverage 1.08";
-plan skip_all => "Test::Pod::Coverage 1.08 required for testing POD coverage"
-  if $@;
-
-eval "use Pod::Coverage::TrustPod";
-plan skip_all => "Pod::Coverage::TrustPod required for testing POD coverage"
-  if $@;
-
-all_pod_coverage_ok({ coverage_class => 'Pod::Coverage::TrustPod' });
diff --git a/xt/release/pod-syntax.t b/xt/release/pod-syntax.t
deleted file mode 100644
index 8a22900..0000000
--- a/xt/release/pod-syntax.t
+++ /dev/null
@@ -1,7 +0,0 @@
-#!perl
-use Test::More;
-
-eval "use Test::Pod 1.41";
-plan skip_all => "Test::Pod 1.41 required for testing POD" if $@;
-
-all_pod_files_ok();