refactor _constructor_maker_for to make special handling of specific superclasses easier
scan for new to find package rather than using can
pass __no_BUILD__ to Moose and Class::Tiny

If the parent class implements BUILDALL, assume it is a M* module and
that we can pass a hashref of options, including the __no_BUILD__
argument.  This flag should indicate to the parent constructor that it
should skip calling any BUILD functions.  Since Moo calls these
functions, having the parent also call them meant they were run at the
wrong time and multiple times.
surpress BUILD running when __no_BUILD__ passed to constructor
add test for __no_BUILD__
Merge branch 'no-build' into master
if a class has no attributes, don't store anything passed to new

The constructor generator was relying on the previous behavior, so it
gets its own new sub so it can be bootstrapped.
remove importing strictures in caller, but suggest it in synopsis and doc
more extensive changelog entries