Tweak to how bplist handles UID values.

This change makes xml-encoding an originally binary encoded plist
equal to what the output of "plutil -convert xml1" is. It also makes
the binary plist loadable in the original program after re-encoding it
as UIDs are not integers and really do need to be treated separately
so that the correct tag is used.