Fix bug in "ignore" option behavior

Ensure source code between JSHint "ignore" directives even in the
following cases:

- the line ends in a character sequence that superficially appears to
  be an "end multiline comment" token
- the line ends with a comment that is defined with the multiline
  comment tokens but only spans a single line

Resolves GH-1396
Resolves GH-1691
Improve JS extraction from HTML. Fixes gh-1942

When there were no lines before a <script> fragment and the previous fragment,
or if there was no previous fragment before a <script> fragment, the parser
would throw. This is corrected.

Thanks to @alex-macaulay for proposing this patch.

Closes #1942
Correct line number for "lonely setter" warning

Although the openening block body token is most commonly written on the
same line as the accessor name, JSHint should generate a warning in
terms of the name token's line in cases where they differ.
Warn about "lonely setters" in class bodies

Closes #1949
Intl global in ECMAScript Internationalization API 1.0 (ECMA-402)

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl
Refactor accessor parsing
Reformat expected values file for readability
Implement more complete function name inference

The semantics of function objects' "name" property has been formalized
in the ECMAScript 6 specification. Implement the specified behavior with
two differences:

- Report functions whose name is derived from an expression as having
  the name "(expression)" (in these cases, the correct value cannot be
  determined statically).
- Report functions whose name is unset as having the name "(empty)".
  Although the specification dictates these functions be assigned the
  empty string ("") as a name, a more explicit name will be more
  informative to developers inspecting the generated report.
Update jshint.rc options order

Exchange order of `forin` and `freeze` option in jshintrc. Make the order same as http://jshint.com/docs/options/
Merge branch 'gh-1691-fix-ignore' of https://github.com/jugglinmike/jshint

* 'gh-1691-fix-ignore' of https://github.com/jugglinmike/jshint:
  Fix bug in "ignore" option behavior
Merge branch 'patch-1' of https://github.com/turadg/jshint into turadg-patch-1

* 'patch-1' of https://github.com/turadg/jshint:
  Intl global in ECMAScript Internationalization API 1.0 (ECMA-402)
New reporter that respects Unix output conventions

Most preprocessors and compilers use the format
"FILENAME:LINE:COL:MESSAGE" for logging errors to stderr. This
makes the report machine readable by existing tools.

Also many text editors lets you navigate directly to that location
when activated.
Correct line number reported with "empty block"

Ensure the warning references the line of the opening brace of the block
body.

Resolves gh-1700