Better error handling (WIP), and uses utf-8 encoding to handle non-ascii stuff in cue entries