wrapup already re-parses modules that were changed, but still generates all JS from the AST. Instead it could just re-generate JS code for the changed modules.