Fix abstract fields not showing up in the book

* Also, show and hide them according to the settings
Fix event arrival dates when start_time > end_time
Timetable arrows shifted when less than 20 mins
Code simplification and visual improvements
Wording - 'Edition' -> 'Edit'
Nicer HTML color -> RGB conversion function

Properly handles 3-digit hex codes too.
PEP8/style fixes