updated design document, added special constructor for User class that will auto-generate a GUID for the ID if the ID passed is null or zero-length