Performed some refactoring and fully commented every class in the util
package.