Abstract Addon logic for tree generation.

* Expose `Addon.prototype.isDevelopingAddon` function.
* Expose `Addon.prototype.treeGenerator` function, that automatically
  handles the returning an `unwatchedTree` vs the bare directory
  (therefore causing it to be watched).
Merge pull request #1785 from rwjblue/easier-overriding-addon-trees

Abstract Addon logic for tree generation.