I think its working
clean up using hlint
refactor answer parsing
adding lots of type synonmys
combining some functions