Removed the need of using AUTOLOAD and overloading a hash reference
Refactored file locking so locks are unlock after locks go out of scope
cleaned up doCallbacks