Generalize ScopedDisposal<T> to handle non-GC types.
Generalize ScopedDisposal<T> to handle non-GC types.

Drop the restriction that ScopedDisposal<T> can only be used with
Oilpan GCed types + parameterize the template over the disposal method
to use (with dispose() being the default.)

R=haraken
BUG=

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

git-svn-id: bf5cd6ccde378db821296732a091cfbcf5285fbd@202048 bbb929c8-8fbe-4397-9dbb-9b2b20218538

axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk