__init__と__call__ってどう違うのかなと思ったけどわかった。
class Foo:
    def __init__(self):
        print 'init'
    def __call__(self):
        print 'call'
Foo()()init
call
__init__はクラスがインスタンス化される時に呼ばれて、__call__はインスタンスが呼ばれた時に動くんですね。
この間書いた、RubyのFoo()とか使ってると混乱するわ!
