Move EmailParser to web_api.processing package
Add reply and signature removal to EmailParser

Both of these capabilities are pretty basic; they just look for patterns
and use those to remove chunks of messages. Signatures are identified
either by a line of dashes or similar, or, failing that, by a set of
simple heuristics that appear to work fairly well. The test suite was
expanded to include test cases for these specific features.
Rename EmailParser as EmailPreProcessor
Fix bug in EmailPreProcessor

Certain messages were causing infinite recursion, which is bad. The error
was caused by assuming that all paths through
EmailPreProcessor#strip_reply either reduced the amount of text or
returned (one of them didn't).
Add EmailParser, implement parse_email_thread
Add thread detection to EmailParser

It currently uses just the subject, and returns an EmailThread object if
one is found, or None otherwise.
Parse Apple Mail emails correctly

Of course, it makes perfect sense to nest multipart messages inside
multipart messages. No problem. The chosen solution is just to parse the
first multipart part recursively.
Attempt basic email type parsing

Three simple rules:
 1. If an email doesn't have a thread, it's a NewPostEmail
 2. If there is a "[PREP] (room)? [BUILDING#]" phrase, it's a NewPostEmail
 3. Othewise, it's a ClaimedItemEmail

It seems to work most of the time.
Merge pull request #5 from alexkonradi/basic-email-parsing

Basic email parsing