Building Helpful Virtual Agents Using Plan Recognition and Planning