Extract superclass.

Monitor and client are both types of frames. This commit essentially
renamed client to frame. There are some dangling references that will
need to be patched, such as add-remove-client-event, but all tests
succeed after this rough name change. More refactoring to come.
frame: Added virtual dtor.
cmake: Reenabled missing c++ warnings.

Somehow, in my infinite wisdom, I was setting c++ warnings in
CMAKE_CXX_COMPILER_ID, rather than s_cxx_flags. This has been
restored.

There were also a few flags doubled up in the default flags and
gcc-specific c flags. These duplicates have been remedied up.

-Weffc++ is too verbose for boost operators and must be disabled.
-Wold-style-cast is too verbose for efficient X calls and must be
disabled.
frame: Default ctor and copy mechs now deleted.
client: Reintroduced client as subclass of frame.
client: Bashed stale inc.
client: Shelled new testing modules.