Protocol script race

Fixes #723 .  This changes the interface to createRequest to include a to-be-filled response object.  This avoids the race condition currently in Protocol.Script.