Allow task definition as class method

See proposal on doit forum [dodoclass](https://groups.google.com/forum/#!topic/python-doit/F-taF4rs1ZA)

    class Dodo(object):

        def task_hello(self):
             """hello"""

            def python_hello(targets):
                with open(targets[0], "a") as output:
                output.write("Python says Hello World!!!\n")

            return {
                'actions': [python_hello],
                'targets': ["hello.txt"],
                }

        def run(self):
            import inspect
            methods = dict(inspect.getmembers(self, predicate=inspect.ismethod))

            import doit
            doit.run(methods)