Make MacroableTrait handle non-static calls

This will make MacroableTrait able to cover Cache\Repository, HtmlBuilder and FormBuilder.

Question is if there's a problem not being able to have the same macro method on different instances?
Atleast not when defining them all early in the cycle.