Using var-args template on the Constructor (Got to delete a few macros. I love deleting macros:)
Added compile-time method categorization.
Removed attrb method::_type and the correlated enum, as now it is obsolete
because the type is decided through inheritance resolution.