simplify match in precedence()
Remove the last of the fail!s in the interpreter. All functions return Result types with descriptive error messages
fix gitignore