Move consumer_of tests and adjust dependencies
Add support for Role::Tiny and Moo::Role

Newer versions of Moo::Role were working (only because they mimicked
Moose), this fixes older Moo versions and adds support for Role::Tiny.

Moose is no longer a hard dependency. Consuming classes are generated
with string evals now (instead of anonymous Moose classes). Which should
be a little closer to real-world consumers anyway.