Adding new functions and improving overall organization