Refactored some code for readability, added TODO tags in method stubs