Make error() non-terminal

Stopped Error() from forever being present when RTC reports an error.
This means if the RTC fixes itself, functionality resumes. Moved the
display initialisation code into a seperate function so it can be called
during setup; and after exiting Error()