Nicer calculator UI, re: error handling and loops