Rework signup into a persistent entity
Add lock wait timeout exception
Add pooled lock mechanism