Upstream rebase

@nateabele I figure we should probably keep `new` branch sync'd with the fixes being put into 0.2.xx. 

I rebased `new` against `upstream/master` and resolved the conflicts.  The only questionable merge conflict was in viewDirective.js with the new view locals processing.

This PR doesn't merge automatically because of the rebase merge-conflict-resolution rewriting your large "WIP" commit (at least that's my best guess).