This only refactors internal architecture and representations, the user api is unaffected.
Split out some optional code into own sources to shrink down libwebsockets.c and server.c a bit