Call METHOD with ARGS. ARGS provides the context on which implementation to use. This should only be called from a generic function.