Many changes, including API breaking ones.

- Rename `Error` -> `ParseError`.
- Add `Beautify` function for pretty error printing.
- Provide `LineOffset` instead of `Column`. Calculating the column becomes as
  easy as:
      utf8.RuneCount(contents[locex.LineOffset:locex.Offset]) + 1
- Unmarshal documentation and examples.
- All Node methods correctly return UnmarshalError instead of ParseError.
- Add `LoadAST` convinience shortcut function.