Working on the Candidate state and refactoring the classes to reduce code clutter.