adding jslint to the package.json
adding "use strict"
Adding missing files from previous commit.
Undoing accidental commit to ui.jsproj
Add custom jshint reporter to produce error codes, text coloring, and table formatting
Add copyright to jshintreporter.js
Added flags to the jshint config that I believe represent the linting we care about.
Fix some jshint erros/warnings
Remove JSHint from default build.
1) Relax as many JSHINT options as possible
2) Mark some files to be ignored by jshint.
Cleaned up old comments in jshint.js

Fixed the following JSHint errors:
src\js\controls\AppBar\AppBarCommand-phone.js:
 line 54  col 14  (W032)  Unnecessary semicolon.

src\js\controls\AppBar\SettingsFlyout.js:
 line 59  col 14  (W032)  Unnecessary semicolon.

src\js\controls\DatePicker\datePicker.js:
 line 41   col 14   (W032)  Unnecessary semicolon.
 line 94   col 14   (W032)  Unnecessary semicolon.
 line 498  col 103  (W027)  Unreachable ';' after 'return'.
 line 498  col 103  (W032)  Unnecessary semicolon.

src\js\controls\Pivot\Pivot.js:
 line 940  col 102  (W032)  Unnecessary semicolon.

src\js\controls\SearchBox\SearchBox.js:
 line 913  col 112  (W041)  Use '===' to compare with '0'.
 line 997  col 116  (W041)  Use '===' to compare with '0'.

src\js\controls\Select\select.js:
 line 20  col 14  (W032)  Unnecessary semicolon.

src\js\controls\TimePicker\timePicker.js:
 line 468  col 43  (W041)  Use '===' to compare with '0'.
 line 550  col 45  (W010)  The object literal notation {} is preferable.

src\js\controls\Toggle\Toggle.js:
 line 58   col 14  (W032)  Unnecessary semicolon.
 line 141  col 38  (W041)  Use '===' to compare with 'true'.

src\js\res\Res.js:
 line 18  col 23  (W041)  Use '===' to compare with '0'.
 line 64  col 6   (W032)  Unnecessary semicolon.

src\js\ui\control.js:
 line 25  col 6  (W032)  Unnecessary semicolon.
 line 51  col 6  (W032)  Unnecessary semicolon.

src\js\ui\declarativeControls.js:
 line 86   col 6  (W032)  Unnecessary semicolon.
 line 161  col 6  (W032)  Unnecessary semicolon.
 line 170  col 6  (W032)  Unnecessary semicolon.

src\js\ui\elementUtilities.js:
 line 29  col 6  (W032)  Unnecessary semicolon.
 line 42  col 6  (W032)  Unnecessary semicolon.

src\js\ui\fragmentLoader.js:
 line 76   col 6   (W032)  Unnecessary semicolon.
 line 84   col 6   (W032)  Unnecessary semicolon.
 line 94   col 6   (W032)  Unnecessary semicolon.
 line 108  col 18  (W032)  Unnecessary semicolon.
 line 237  col 6   (W032)  Unnecessary semicolon.
 line 252  col 6   (W032)  Unnecessary semicolon.
 line 273  col 6   (W032)  Unnecessary semicolon.
 line 305  col 6   (W032)  Unnecessary semicolon.
 line 326  col 6   (W032)  Unnecessary semicolon.
 line 343  col 6   (W032)  Unnecessary semicolon.
 line 366  col 6   (W032)  Unnecessary semicolon.
 line 425  col 6   (W032)  Unnecessary semicolon.
 line 447  col 6   (W032)  Unnecessary semicolon.
 line 454  col 6   (W032)  Unnecessary semicolon.
 line 477  col 6   (W032)  Unnecessary semicolon.
Refactored JSHint file and fixed the following JSHint errors.

src\js\ui\optionsLexer.js:
 line 417  col 37  (W027)  Unreachable 'break' after 'continue'.
 line 427  col 37  (W027)  Unreachable 'break' after 'continue'.
 line 518  col 29  (W080)  It's not necessary to initialize 'type' to 'undefined'.
 line 519  col 29  (W080)  It's not necessary to initialize 'token' to 'undefined'.
 line 527  col 33  (W027)  Unreachable 'break' after 'continue'.

src\js\ui\tabManager.js:
 line 50  col 10  (W032)  Unnecessary semicolon.

src\js\ui\transitionAnimation.js:
 line 25  col 37  (W007)  Confusing pluses.

src\js\uicollections\Flipper\Flipper.js:
 line 900  col 26  (W032)  Unnecessary semicolon.

src\js\uicollections\ItemsManager\ListDataSource.js:
 line 2482  col 72  (W041)  Use '===' to compare with 'undefined'.

src\js\uicollections\ItemsManager\StorageDataSource.js:
 line 124  col 22  (W032)  Unnecessary semicolon.

src\js\uicollections\ListView\BrowseMode.js:
 line 1315  col 52  (W041)  Use '===' to compare with '0'.
 line 1370  col 98  (W041)  Use '===' to compare with '0'.

src\js\uicollections\ListView\ListViewImpl.js:
 line 2776  col 26  (W032)  Unnecessary semicolon.

src\js\uicollections\ListView\VirtualizeContentsView.js:
 line 2601  col 22  (W032)  Unnecessary semicolon.

src\js\uicollections\Repeater\Repeater.js:
 line 132  col 26  (W032)  Unnecessary semicolon.

src\js\wwa-app\navigation2.js:
 line 103  col 45  (W041)  Use '!==' to compare with '0'.
 line 167  col 25  (W120)  You might be leaking a variable (history) here.

src\js\wwa-app\state.js:
 line 145  col 6   (W032)  Unnecessary semicolon.
 line 286  col 27  (W002)  Value of 'e' may be overwritten in IE 8 and earlier.
Switch to .jshintrc file for configuration of JSHint rules.
-Moved definition of JSHint global variables to .jshintrc file.
-Added .jshintignore file and moved ignores from jshint.js into the .jshintignore file.
Fixing merge errors after rebasing on top of master.
Cleaned up JSHint config files. Removed duplicate file.
Add jshint to the "release" task.
Updated definition of Grunt "release" task to not include tests.
Grammar fix
fixing bug I created when trying to convert our code away from ==, turns our only null coerces with "== undefined"