Per-class logging decorator + colors
QtPlayer handles most errorString

(it still does not "missing file" error; for empty file or unplayable file,
it just print a warning, reset everything and emits "empty")
fix some errors in event queuing