anonymous: move counters to TypeContainer

With the anonymous counters on ModuleContainer,
anonymous method and type names will be generated
in a way that depends on the order of the sources
passed to mcs. This can cause undesirable API
and IL differences.

Moving the counters to TypeContainer instead
avoids this issue.