Introduce AbstractClient::destroyClient()
Summary:
The new method provides a generic way for destructing clients. Notice
that we can't just delete clients because we may need to discard
temporary window rules, which is usually done in destroyClient().
Test Plan: Compiles.
Reviewers: KWin, davidedmundson
Reviewed By: KWin, davidedmundson
Subscribers: kwin
Tags: KWin
Differential Revision: https://phabricator.kde.org/D27821