Replace most invocations of fail keyword with die! macro
Remove fail keyword from lexer & parser and clean up remaining calls to
fail

Fix merge conflicts - Issue 4524
Merge remote-tracking branch 'nickdesaulniers/issue4524' into nocomm1