Fix line number ranges

Reported line numbers were always #firstLine-firstLine. This pull request changes this to #firstLine-lastLine, except in the 'single line with return' case, which removes the -lastLine part by omitting lineNumberEnd.
Rewrite no-implicit-return checks

Return must be explicit, except when the returned expression is a value.