merge upstream
Fix tests to require no defaults in database

--HG--
branch : dont-leave-defaults
branch merge

--HG--
branch : dont-leave-defaults
Fix broken FK constraint name generation

--HG--
branch : dont-leave-defaults
Add test verifying that create_table leaves no defaults in db.

--HG--
branch : dont-leave-defaults
Fix bugs in test fix
    forgot to allow null instead of a default,
    left an extra argument for command,
    messed up transactions

--HG--
branch : dont-leave-defaults
Make Oracle backend comply with new "no defaults left in db" policy

--HG--
branch : dont-leave-defaults
Make SQL Server backend comply with new "no defaults left in db" policy

--HG--
branch : dont-leave-defaults
Make Sqlite backend comply with new "no defaults left in db" policy

--HG--
branch : dont-leave-defaults
Merge the dont-leave-defaults work
Fix #1199 - broken __str__ on exception

--HG--
extra : rebase_source : 75e4187792c71803cc2e8d18bbaa31bda8879547
Fix bad use of digest
Merged in shaib/south (pull request #99: Start work to avoid leaving defaults in database)