perf(isObject): use strict comparison

this is a micro-optimization based on http://jsperf.com/isobject4

no significant improvement in macro-benchmarks, but since it makes the code better it makes
sense making this change.
perf(ngBind): bypass jquery/jqlite when setting text
perf(Scope): watchCollection optimization

tiny ~4ms improvement and code that minifies better
perf(Scope): don't use forEach in

doesn't make any significant impact on our current benchmarks because we don't have benchmarks with
many scope events, but this is a straightforward change worth doing
perf(Scope): optimize $watchCollection when used for watching objects

Since we control the oldValue, we don't need to worry about proto-inhereted properties which means we can use
'for in' and skip hasOwnProperty checks.

http://jsperf.com/for-in-vs-object-keys2
perf($compile): refactor publicLinkFn to simplify the code and use 'for in' loop
chore(angular.suffix): fix typo
refactor($compile): simplify controllersBoundTransclude check

no measurable perf difference, but the code more simple and minifies better
style(jqLite): use the common for loop code style
style(shallowCopy): use common for loop style