Finish switching to HasUuid.  Fixed Xcode project generator to handle protocols