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.
Added smart indent and auto close tags as preferences.
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.
Add proxy support for extension installation.

Configurable via a "proxy" preference (which could be used for other parts of
Brackets that should use HTTP proxy).

This fixes #6241, #5958 and [this backlog item](https://trello.com/c/SEV95fdK/902-support-for-a-proxy-in-extensions-installation)
move functions which are referenced before they're defined
Provide syntax highlighting for ASP.NET User Controls (.ascx files).
Fixes: indentTabs -> indentTags
Provide syntax highlighting for Property Lists (.plist files).