added latedef_func option support.

Signed-off-by: Bernard `Guyzmo` Pratz <guyzmo+github@m0g.net>
added function* support with esnext option, and errors on function* with moz option

Signed-off-by: Bernard `Guyzmo` Pratz <guyzmo+github@m0g.net>
added error on generator function not containing a yield statement

Signed-off-by: Bernard `Guyzmo` Pratz <guyzmo+github@m0g.net>
fixed indentation
fixed indentation
Merge branch 'function_generator_support'
allow array comprehension expression as standalone statement
updated for each statement rule so it is parsed and throws an error when moz is not set.
changed message W118 to show what feature is not available ;
fixed JSON parsing to queue lexer warnings until the current value is known as being JSON ;
refactored esnext/moz features to be parsed even in ES5, but throw a meaningful warning when the feature is met.
refactored moz features multiple catch and catch filters to be parsed ES5 and ESNEXT, but throw a meaningful warning when the feature is met.
Made the moz option extends and overrides all esnext features
added error on let statement not directly within block

Signed-off-by: Bernard `Guyzmo` Pratz <guyzmo+github@m0g.net>
fixed style and verb
updated no let within a block stmt so it does not put the variables in environment ; added more tests
Merge branch 'nolet_in_ifstmt' of git://github.com/guyzmo/jshint into guyzmo-nolet_in_ifstmt
Fixed lint and test failures
Made new latedef option backwards compatible, removed latedef_func and added latedef:nofunc