Bare async provider implementation.

Not working due to an issue in code inspection implementation (html
template is displayed before it's rendered).
Merge remote-tracking branch 'origin/fix-5137' into fix-5137-async-linting

Applied experimental version as the base for the development.

Conflicts:
	src/language/CodeInspection.js
Fix @param specification error.
Change documentation and JSDoc.
Put timeout on provider execution.

Use runPromise as the aggregation point instead of doing it in varios
places.
Change to record notation (understood by CC).
Fix typo in the docs.
Resolve with null on timeout. Lint.
Add unit tests.
Merge remote-tracking branch 'upstream/master' into fix-5137-async-linting

Conflicts:
	src/language/CodeInspection.js
Merge remote-tracking branch 'upstream/master' into fix-5137-async-linting
Address code review comments.
Increase timeout to 1000ms and make it a pref.

Adjust the values in the unit tests.
Add test case for race condition.
Address nits and documentation review outcome.
Use rotateplane cursor as spinner
- Tweak Quick Edit error/feedback strings
- Fix comments to reflect Quick Edit error related API changes
- Fix outdated FileSyncManager docs
Resolve with an error on timeout/failure.

Add unit tests. Move strings to strings.js.
Merge branch 'master' into fix-5137-async-linting

Conflicts:
	src/nls/root/strings.js
Use the correct name of CodeMirror option for tab size.