"use Data::Printer" instead of "require Data::Printer"

I don't know why require was used, but for whatever reason it has been causing
the following error to appear in my syslog:

``edit: removed internal details.``

Changing this to "use Data::Printer" and getting rid of the extra call to p()
using the reference stopped it and I can load stuff again.

In my opinion, if you want to include a module at runtime use a "mixin" class.
Mouse has good support for this kind of thing.