We now have a pretty decent term re-writing system.