Add AXTreeDelegate and refactor other AXTree classes slightly.

AXTreeDelegate will allow content/browser to make BrowserAccessibility
a wrapper around AXNode. Test it using gmock.

Change AXTreeSource to take a typename rather than a class so that
we can use it with WebAXObject (which is an object that owns a pointer,
not a pointer itself).

Finally, replace GetChildAtIndex with a function GetChildren that
populates a vector. This allows content/renderer to more efficiently
filter out children that don't belong in the tree.

BUG=316726
R=dtseng@chromium.org

Review URL: https://codereview.chromium.org/125783002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252888 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 252888