Changed spawn syntax from Spawn.run to Spawn.new

This seems a little more natural because you're creating a "spawn"
(noun) instead of "spawning" something that runs.  Also, this refactor
eliminates the need for a seperate Id class.  Instead just return the
Spawn object which is used to monitor status of the spawned process.