Re-rolled patch #37, Attached interdiff for same. Addressed #40, suggestions.