Performance tab improvements

Hello,

There is a set of improvements for Performance tab (sorry for big set in one pull request, I may break into several if you'd like to):

### Behavior changes
+ in both watch tree and watch expressions the watches created by ngRepeat now marked with their expressions - so instead of multiple '$watchCollectionWatch' lines you'll see 'ngRepeat: <your-ng-repeat-expression>', like on the screenshot at the end
+ in watchers tree if some scope has more than 50 child scopes then only first 25 and last 25 are shown. I think that in most cases when you have >= 50 child scopes there is ngRepeat, and usually in ngRepeat all elements have almost same set of watch expressions so it is not needed to see all of them.
+ slider under watchers histogram worked some unoubvious way. Not sure was it planned so or not, but I'd like to suggest another behavior - slider defines which percentages shall be shown on histogram. If 0-50 then only expressions which take <= 50% will be shown, if 50-10 - then only those which take >= 50%.

### Improvements/fixes
+ watchers tree now is building "in background" without freezing UI
+ watchers tree is rebuilding only if some watch was added/removed
+ watchers tree on UI is rebuilt partially on update
+ Fix: "Log to console" checkbox now works

### Screenshots
![watches](https://f.cloud.github.com/assets/2125405/1846286/e2b0d748-75e2-11e3-9405-c21fceef8c63.png)

![skipped](https://f.cloud.github.com/assets/2125405/1846287/e6378b5a-75e2-11e3-8c13-71ccdc3627ee.png)