Attempt a cleaner fix for bug #4484 (Working set broken after Save As /
save untitled outside project):
* addToWorkingSet() ensures item is moved to requested index, even if it
was already in the working set at some other index
* Add a force flag, so we can guarantee a redraw after suppressing it during
removal earlier
* Call handleFileAddToWorkingSet() directly from _doSaveAs() to simplify
plumbing (no advantage to going through FileViewController in this case)
Using "workingSetSort" instead of "workingSetAdd" in certain cases of
addToWorkingSet() was problematic, since FileViewController attaches
specific meaning only to the latter.

So -- change addToWorkingSet() to always use "workingSetAdd", passing an
index arg so WorkingSetView can decide on its own how much UI to refresh
(rather than making assumptions about that in DocumentManager). We now
*only* dispatch "workingSetSort" in genuine no-op cases where nothing was
added or removed (and we only want a redraw).
- Add unit test that @bchintx wrote to cover #4484.
- Remove redundant timeout args in unit tests (same val as default)
- Fix JSLint whitespace errors I noticed in ProjectManager
Documentation nits from code review
Merge pull request #4523 from adobe/pflynn/saveas-outside-proj

Fix for #4484 (Working set broken after Save As / save untitled outside project)