GUAC-825: Screen sharing support for RDP

These changes migrate the RDP support to the API introduced in GUAC-844, allowing RDP sessions to be shared across Guacamole connections.

Beware that these changes redo several changes on master, as things like Swedish keyboard and Display Update support have been merged in as development progressed.

Needless to say, migrating the entire RDP support to a new API is a large change.
Yup. Very much so.

If it weren't for FreeRDP, I'd use ```int``` or ```bool``` from stdbool.h... but FreeRDP is not compatible with stdbool.h. Things will fail to build if you include that.

The above cases definitely need to be ```BOOL```, as they're functions whose prototypes need to match the pointers that hold them, and the types of those pointers are dictated by FreeRDP.