Resolve circular dependencies
Resolve circular dependencies

Before, dependent tables were moved to the end of the table.
Now, they're moved to just after the table they depend on and remembered.
A dependent table can only be moved once.

austinhyde/DBSteward,nkiraly/DBSteward