remove synchronizer dependency, require new session for each transaction; some cleanup