Add contract.

Everyone likes Hitman, right.
Add database schema class.
Change contract to use database schema values.
Add database schema default values and fix formatting.
Change database schema versions to be package local.
Change provider to use database schema class.
Remove some database classes in prior of database schema class.
Remove provider uris class in prior of contract.
Remove database exception.
Remove database field names class.
Change setting defaults ownership to caller.
Remove default sort orders from contract.
Fix tests.
Fix provider deck insertion check.
Change packets structure.
Merge branch 'contracts' into dev