Initial work

Wouldn't just synchronizing the methods be simpler than explicit locks?