Implement issue #12: Change douban parsing to interface based style.