protocol: Add support for side mouse buttons
Side mouse buttons currently do not exist in the protocol, causing them to be inexplicably ignored by VMs in virt-manager and such. This lays the groundwork for fixing that issue.
I have also already implemented this in spice-server, spice-gtk and the Linux vd-agent. I plan on submitting MRs for those projects as well if this is accepted.