Fix warnings due to anonymous namespace.

Some gcc-4.2 builds complain when a type is defined within an
anonymous namespace, but subsequently used to define members of
any class declared outside of the anonymous namespace.  This is
probably a spurious warning, but it is easy to fix by making the
type itself a member of the class that is using it.

Change-Id: I78ad953ffe1eabeeed487fc55f0a3cc6f779f4c8
Merge topic 'anon-used-by-non-anon' into master

323f6a3b Fix warnings due to anonymous namespace.