complete promise-related code rework, clarification of API
bumped version