Changing from "xhr." to "msg" means that the returned message will be "xhr_complete." instead of just "xhr.". Is this intended? Otherwise, looks good.