An incoming email gets processed and saved to the database

An incoming email comes into `EmailProcessor`
`EmailProcessor` passes the email to `PackageGenerator`, and call `.generate`
`PackageGenerator` uses the `EmailAdapter` to clean up the data, and passes it to `Package` where it creates a new `Package` object, returning it to `EmailProcessor`.
Back in `EmailProcessor` it is saved in the database.

WOW!
If you just write `@something` it'll tag the github user "something". Even in commit messages. But you're line `@email_adapter[key] = value` actually links to your code which is pretty awesome!