[v2] include: split off internal definitions from client.h
The client.h file is part of the public module API, but it also contains definitions that aren't useful for being used in modules. Splitting them out into their own client-intern.h file, which isn't part of the API.
Changes v2:
- resolved lots of merge conflicts
- rebased forward on about 240 commits
Edited by Enrico Weigelt, metux IT consult .