Add fix_metaclass fixer

This fixer changes any class definition using __metaclass__ to use
six.with_metaclass():

class Foo(object):
    __metaclass__ = FooMeta

will be changed to:

import six
class Foo(six.with_metaclass(FooMeta, object)):
    pass

If multiple base classes are encountered a base class that can be
passed¬
to six.with_metaclass() will be created dynamically:

class Spam(Foo, Bar):
    __metaclass__ = SpamMeta

class Spam(six.with_metaclass(SpamMeta, type('NewBase', (Foo, bar), {})):¬¬
    pass

This needs to be done because six.with_metaclass() can't handle more
than one base class.
Merge pull request #7 from DasIch/metaclass-fix

Add fix_metaclass fixer
Merge remote-tracking branch 'upstream/master'

Conflicts:
	libmodernize/fixes/__init__.py