Split database models into individual modules.

This is a pretty big patch, but it's largely refactoring and not much new code.

- Removal of "tables" module, bumping those items up one level
- All database models are available through `inbox.models`
- `create_message` function is now part of `Message` object constructor.
  This also means that attributes of `Message` objects must be set manually
  in the tests instead of just passing keyword args.
- Lots of misc things moved around and cleaned up