Added a bit of documentation and unit test methods.
Refacored some methods to have them in more appropriate places. Removed a broken test class.
Further refactoring for better code organization and ease of unit testing.
More refactoring.
Fixed leave balance calculation bug.
Validate days earner or spent are more than 0.