change api. bugfixes. breaks legacy code.