Change to user creation to avoid a schema related issue but also to attempt to get better behavior during concurrent updates.
Background scheduling and indexing is causing more concurrent activity which results in multiple attempts to create a user entry in the db. This update runs that as a separate transaction which can be rolled back and discarded if it turns out the user was created by a separate process. This transaction also creates the special calendars needed for scheduling to avoid issues caused by the lack of a unique index.
Included are some minor trunk changes to remove more vvenue related code.