Add sim_attribute().
Mite::Class->all_attributes() and linear_parents()

Now a class can get all its inherited attributes.
Die if the mite code fails to compile in a test.

Also return the generated file for possible debugging use.
Fix single inheritance with attribute defaults.

If a parent has the same attribute, and both declarations have defaults,
the parent's default would apply.  The parent's new() was being called
first, applying the parent's default, and then the child would not
apply its default.

Now each class applies all the defaults in their attribute chain on their own.

This probably also fixes multiple inheritance of attributes, testing that next.
Using random class names might produce the same class name.

Need to fix that in Test::Mite to prevent from using the same class
twice.
Test multiple inheritance works with attribute defaults.

Last commit fixed this, too.
Merge branch 'issue/14'

Attribute inheritance with defaults now works with multiple inheritance.