Refactor 2, cleanup and final naming