General refactoring + naming