Rewrote Instruction to work nicer and need less reflection to make things work