WL-3033 Make sure groups update with multiple roles.

This fix has the limitation that role cannot contain a comma. This is not specified anywhere in the documentation, but should be the case.
Use state machine in decoding.
WL-3033 Merge state machine branch
WL-3033 Correct typo.
Merge pull request #8 from ox-it/WL-3033

WL-3033 Make sure groups update with multiple roles.