feat(api): Client-ID as a real UUID

We store the UUID in binary form in DBs, and perform checking
on user inputs.  Compared with the hex form we currently using,
the binary form saves half space to store.  In addition, by
enforcing UUID on the server side, we can minimize the chance of
client ID collision.

Change-Id: Ic3048a0d2aa21bd201e2d2d9cd8a562662cf8f8e
Closes-Bug: 1233420
Merge "feat(api): Client-ID as a real UUID"