MD Settings: clarify "controlled by" logic

Before, we were using PrefService::Preference::IsExtensionControlled()
to determine if a pref was controlled by an extension. But, as far as I
can tell, that determines if a pref was *registered* by an extension.

What we want to know is whether an extension was installed (either by a
user or by policy) that overrides a function pref value. I re-used the
same code that /options/ used, which is a complicated mixture of enums,
manifest sniffing, and pref filtering. But it works. I've added a small
shim to re-use that from settings, based on pref name. It's not amazing,
but it'll work for now.

What next?

Well, this turns off extension puzzle piece icons and tooltips. This CL
also plumbs more information about whether an extension can be disabled
(a major shortcoming of the old UI, as disable buttons don't work in
some cases).

Next step: show a separate row-like UI.  See crbug.com/614265#c36.

R=stevenjb@chromium.org
BUG=614265
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2479973002
Cr-Commit-Position: refs/heads/master@{#432704}
19 files changed