Optimization of AvatarData wire format

This commit optimizes the wire format of the AvatarData. It saves us a total of 41 bytes.
- Hand State moved to semi-nibble of bitItems - 1 byte savings
- Key State moved to semi-nibble of bitItems - 1 byte savings
- AudioLoudness encoded as byte (and rescaled to original scale/range) - 3 byte savings
- view frustum direction/up/right converted to a quat and stored in scaled manner - 48 bytes to 8 bytes - 28 byte savings
- view frustum FOV stored as 2 byte angle - 2 byte savings
- view frustum Ratio encoded as 2 bytes - 2 byte savings
- view frustum Near and Far clips encoded as 2 bytes each - 4 byte savings