code: public String setUser(String uid, Map<String, Object> properties, DateTime eventTime)
        throws ExecutionException, InterruptedException, IOException {
      return createEvent(setUserAsFuture(uid, properties, eventTime));
    }
docs: Sets properties of a user. Implicitly creates the user if it's not already there. Properties
  could be empty.
  
  @param uid ID of the user
  @param properties a map of all the properties to be associated with the user, could be empty
  @param eventTime timestamp of the event
  @return ID of this event