Refactor and clean up argument lists