Make Builder mechanism thread safe by using factories and builders separately