Pre Lab Test#2 Commit: Major Bug Fixes, Code Refactoring and Documentation added. Check Lab6,7 & 9 for changes.