Add new apis for view state migration and convert the remaining old preferences to the new apis.
Fix the hang issue when viewing a search result with state.json file open.
Implement view states migration from the old preference model.
Merge remote-tracking branch 'origin' into rlim/view-state-migration

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
Add deprecation warnings for the old APIs.
Fix all broken integration tests with one exception -- excluding one failing test in WorkingSetView tests.
Add xit to fix JSLint error.
Store working set files in a project layer.
Store project tree states in the project layer.
Making changes to review feedbacks.
Use the project layer in the right way.
Makes console messages from test windows appear in Spec Runner's console.
Added smart indent and auto close tags as preferences.
expose server baseUrl in LiveDevelopment
Remove lineComment of JSON
Removing space character from secondary trigger keys for CSS code hints.
when selection is changed in working set, scroll it into view
Merge remote-tracking branch 'origin' into rlim/view-state-migration

Conflicts:
	src/preferences/PreferencesManager.js
Automatically saves prefs on `set` unless new `doNotSave` flag is set.

This is following the pattern @RaymondLim established in #6740.
Mirror console log output from test window in both consoles.