== TO DO list for the MetaModel

FIX ME:

The current code for BUILD and DESTROY is incorrect, it uses post and pre order
traversal, this should be changes to least and most derived traversals.

=== methods

* Create a Perl6::Method::Params to handle formal parameters, and their binding.
** This should deal with invocant forms of $self: and missing invocants (implicit)

=== attributes

* add Delegation to Attributes, this should be fairly simple to do as well.

=== roles

* Turn Roles into a more formal MetaRole object.
** Store method conflicts so we can still call them when disambiguating.
** Store attribute conflicts as well

* implement $?ROLE

** we need to track the class that a role method is associated with, but this 
can be problematic since they can be associated with a number of them

** NOTE: - currently CLASS will return the ROLE for role methods

=== submethods

* handle dispatching correctly, which means a proper dispatcher is needed.

=== dispatching

hmmm, how to do it
