fix paster db clean again

get_site_user would close the session and dispose of it, then the call to model.User.get() would reopen a new connection and transaction that acquires an exclusive lock on the tables that does not get closed before the the drop tables is run.

This pr fixes it by deferring the commit and remove of get_site_user until after the pylons.c.user_obj is assigned.

I have tested this with the datapusher and harvester and they appear to still work correctly with this patch