refactor, add apply page, still needs styles