(1) AbstractResume adds complexity without contributing utility. There's not
really a clean "class" abstraction in JavaScript to begin with; CoffeeScript
classes, as nice as they are syntactically, occlude the issue even further.
(2) AbstractResume currently functions as a container for exactly two functions
which arguably should live outside the resume class anyway.
Add support for detection of invalid line breaks in JSON string values.
Fixes#137. Could be improved to fetch the column number and drop the
messy grabbing of the line number from the exception message via regex,
but currently the "jsonlint" library (not to be confused with
"json-lint") only emits an error string. Since this is also the library
that drives http://jsonlint.com, we'll accept the messy regex in return
for more robust error checking when our default json-lint path fails.
All of the above only necessary because standard JSON.parse error
handling is broken in all environments. : )