add icons with FontAwesome and refactor some code