Moving inc_pc to the .imm pushes instead of the .?, as only the immediates need that. Also reworking all instructions that previously required the hold_last feature, as the reworked microcode timing (level/edge separation) removed the need for that, and it makes refactoring harder.
Refactored microcode so that PC now equals the instruction being executed, and not the location after, and updated all tests to reflect this.  PC incrementing happens right before the fetch, rather than right after. This clears the way for PC-based instructions like push16.pc to be implemented, and makes things more intuitive.