no message
Quick commit: refactored code and trimmed all redundant functions, moving them to a common module