Refactor names
Add ALU, needs testing