I changed LockManager from a singleton to a regular class, it is very easy to create multiple instance of LockManager, which is not a very good thing to do for this assignment.
What's the purpose of this method? Why not jus use a regular constructor? There is really nothing special about lock manager. If you think about it, you don't want multiple instances of your main JFrame, or controllers, or probably any other of your client classes. But you don't make them singletons, do you? Eugene.