Fix #6661. Configurable multiple linters.
Add testcase for non-existance provider.

Test that non-existing provider, preferredOnly = true and firstOnly =
true.
Add test case for when prefer is not specified.

Also, change single-quote to double-quotes for string literals.
Merge remote-tracking branch 'upstream/master' into kai/fix-6661-multi-linters

Conflicts:
	src/language/CodeInspection.js
	test/spec/CodeInspection-test.js
Merge remote-tracking branch 'upstream/kai/fix-6558-language-layer' into kai/fix-6661-multi-linters
Merge remote-tracking branch 'upstream/kai/fix-6558-language-layer' into kai/fix-6661-multi-linters
Merge remote-tracking branch 'upstream/kai/fix-6558-language-layer' into kai/fix-6661-multi-linters
Use preferences with context.

Fix issues with logic.
Fix tests.
Do not unregister JSLint on another JS provider registration.

Remove corresponding tests. Clean up tests.
Configure Brackets to use JSLint and JSHint.
Merge remote-tracking branch 'upstream/master' into kai/fix-6661-multi-linters

Conflicts:
	src/language/CodeInspection.js
	test/spec/CodeInspection-test.js
Merge remote-tracking branch 'upstream/master' into kai/fix-6661-multi-linters

Conflicts:
	src/language/CodeInspection.js
Fix JSON syntax error.
Improve readability of var declarations.
Nicer reduce.
Switch to array for 'prefer' pref.
Allow specifying both string and array in `prefer`
Fix testing left-over.
Use variables for pref names.