Revert "we can catch this earlier now that we optimize out unused attributes"

This reverts commit 50d8ed556f87b84c623545557d161a49da613b45.

this actually doesn't work, because a method might look like

    method wrap ($app, @args) {
        if (ref $self) {
            $!app = $app;
        } else {
            $self = $self->new({ app => $app, @args });
        }
        return $self->to_app;
    }