Support one level of re-entry

This is a really lousy solution. A new approach needs to be
investigated. Perhaps a goroutine/channel approach would work better
and allow for re-entry.